Itâs no wonder that responsive search ads have steadily grown in popularity in recent years. Through Googleâs machine learning capabilities, RSAs provide a powerful way to automate the testing of multiple headlines and descriptions to ensure a closer match to user intent. The benefits are clear: RSAs mean broader reach, better engagement, and improved performance metrics.
However, all these benefits come at a significant (but reasonable) cost â they can be extremely difficult to manage, especially when it comes to updating ad copy to promote limited time offers.
I know this firsthand â I work with several ecommerce clients with promotions that constantly change. Not too long ago, I found myself going through the consistently tedious process of updating a clientâs RSA headlines and copy. As I was making the changes, I thought to myself: âThere must be a better way to update this ad copy. I shouldnât have to use find and replace so many times while pausing and enabling my ad campaigns.â
After expressing this to my colleague, Jordan Stambaugh, the two of us agreed there must be a better way. But weâd have to make it happen. A few weeks later, we put that idea into action and created a more efficient process for updating RSA ad copy on a scheduled basis. If you want to try this process for yourself, just keep reading.
Responsive Search Ad Customizers 101: Basic Options & Execution
Before diving into the process of scheduling automatic updates for your RSA customizers, itâs essential to understand some key Responsive Search Ad fundamentals.
First, you can customize three main options within RSAs: the Attribute Name, the Data Type, and the Account Value. Each of these plays a vital role in personalizing your ads:
- Attribute Name: This is essentially the identifier for the customizer. It is how youâll reference the specific piece of information youâre customizing within the ad. For instance, if youâre running a promotion, you might name an attribute âPromotion.â
- Data Type: This indicates the kind of data the attribute represents and it determines how the information can be formatted and used within the ad. Common data types include Text (for plain, non-numeric text), Percent (to represent percentage discounts), Price (to denote monetary values), and Number (for any numerical value).
- Account Value: This is the default value for the attribute that you set at the account level. It acts as a fallback if more specific values arenât provided at the campaign or ad group level.
For example, if you wanted to promote a 10% off discount using RSAs, youâd use the âDiscountâ attribute, a data type of âPercent,â and an account value of â10% off.â Then, when someone is searching for products, Google would test automatically inserting a copy regarding a 10% off promotion into your ad.
Once youâve set up the right customization options, you can start to format your RSAs with customizers.
Hereâs how:
- Start by typing in {
- Click on Ad Customizer then select your attribute
- Google will populate your attributes that are already uploaded
- For a simple offer, use the âDefault textâ attribute as a catch-all. This will ensure your ads run smoothly if Google canât pull the right messaging from your RSA feed
Â
Â
How to Schedule Your Ad Customizers with a Feed
Now that weâve covered the basics, letâs cover how to schedule your ad customizers.
Just follow this three step process:
1. Create the feed
Start by creating two sheets: The Parent sheet, and the Child sheet. The âParentâ sheet will act as the primary data source, while the child sheet will pull data from the parent sheet.
Weâll start by building the parent sheet. After opening the sheet, start by renaming the active tab to âPromotions.â Donât skip this step, itâs crucial for referencing this range in formulas later on.
In your âPromotionsâ tab, head to the top row and label columns A, B, and C with the headers of your ad customizer attributes. For example, you might have âBrandSaleHeadlineâ as your attribute in column A, âtextâ as the Data Type in column B, and âShop the Collectionâ as the Account Value in column C.
Once your headers are in place, move to cell C2. Here, youâll input the expression =lookup(today(),F:G,E:E). This formula will play a key role in dynamically updating your RSA customizer based on the current date.
Next, go to columns E, F, and G, which will be used to manage your scheduling. In these columns, youâll list out the different values your chosen attribute might take, alongside their corresponding start and end dates. For example, under the âBrandSaleHeadlineâ attribute, you might schedule various promotional headlines to appear during different sale periods throughout the year.
Hereâs how your sheet might look:
![How to Schedule Ad Customizers for Google RSAs [2024]](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3NTQgMjQ5IiB3aWR0aD0iNzU0IiBoZWlnaHQ9IjI0OSIgZGF0YS11PSJodHRwcyUzQSUyRiUyRnRpbnVpdGkuY29tJTJGd3AtY29udGVudCUyRnVwbG9hZHMlMkYyMDIzJTJGMTElMkZTY3JlZW5zaG90LTIwMjMtMTEtMjEtMTYyNDI4LmpwZyIgZGF0YS13PSI3NTQiIGRhdGEtaD0iMjQ5IiBkYXRhLWJpcD0iIj48L3N2Zz4=)
Now look back at the first 3 columns on your sheet. They should look like this:
![How to Schedule Ad Customizers for Google RSAs [2024]](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA5NzUgNjkiIHdpZHRoPSI5NzUiIGhlaWdodD0iNjkiIGRhdGEtdT0iaHR0cHMlM0ElMkYlMkZ0aW51aXRpLmNvbSUyRndwLWNvbnRlbnQlMkZ1cGxvYWRzJTJGMjAyMyUyRjExJTJGU2NyZWVuc2hvdC0yMDIzLTExLTIxLTE2MjUzMy5qcGciIGRhdGEtdz0iOTc1IiBkYXRhLWg9IjY5IiBkYXRhLWJpcD0iIj48L3N2Zz4=)
Now create a second sheet. Weâll call this sheet the Child sheet. Itâs going to automatically pull in data from the parent sheet you just created, and will be the one you link to Google Ads later on.
Columns A, B and C will be almost identical to the child sheet, but we will be using a special formula later so we can automatically populate this. So, start by labeling Row 1 Column A âAttribute,â then the next column as âData type,â then column C as âAccount value.âÂ
Then go to C2 and use this expression to populate the right account value from the parent document: =importrange(â[PARENT DOCUMENT URL HERE]â,âPromotions!C2âł)
Your sheet should now look like this:
![How to Schedule Ad Customizers for Google RSAs [2024]](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA5NzYgNjQiIHdpZHRoPSI5NzYiIGhlaWdodD0iNjQiIGRhdGEtdT0iaHR0cHMlM0ElMkYlMkZ0aW51aXRpLmNvbSUyRndwLWNvbnRlbnQlMkZ1cGxvYWRzJTJGMjAyMyUyRjExJTJGU2NyZWVuc2hvdC0yMDIzLTExLTIxLTE2MjYzOC5qcGciIGRhdGEtdz0iOTc2IiBkYXRhLWg9IjY0IiBkYXRhLWJpcD0iIj48L3N2Zz4=)
We recommend adding a date range with default text for any days youâre not running a promotion. In the example above, we have âShop Our Collectionâ appearing as default text.
2. Input attributes
Once you have your feed created, the next step involves inputting your attributes into the Google Ads platform. This can be done either manually or through a bulk upload.
For the manual approach, navigate to âTools & Settingsâ in your Google Ads interface, then go to âSetupâ followed by âBusiness Data.â Here, youâll find an option for âAd Customizer Attributes.â Click the plus sign to add your attributes. Itâs crucial to use the same attribute names that youâve established in your Parent Google Sheet template to ensure consistency and proper data synchronization.
Â
![How to Schedule Ad Customizers for Google RSAs [2024]](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMTYxIDUwMiIgd2lkdGg9IjExNjEiIGhlaWdodD0iNTAyIiBkYXRhLXU9Imh0dHBzJTNBJTJGJTJGdGludWl0aS5jb20lMkZ3cC1jb250ZW50JTJGdXBsb2FkcyUyRjIwMjMlMkYxMSUyRlNjcmVlbnNob3QtMjAyMy0xMS0yMS0xNjI3NTIuanBnIiBkYXRhLXc9IjExNjEiIGRhdGEtaD0iNTAyIiBkYXRhLWJpcD0iIj48L3N2Zz4=)
Â
Alternatively, if you prefer the bulk upload method, again head to âTools & Settings.â This time, select âBulk Actionsâ and then âUploads.â For this process, you only need to upload columns A to C from your template.Â
Be aware that it might take some time for your uploaded attributes to be reflected in the business data section of Google Ads.
3. Set up an automatic schedule
At this point, youâve almost finished scheduling your ad customizers. Navigate to Tools & Settings, then Bulk Actions, then Uploads, then click the Schedules tab at the top. Select your Child Google Sheet as the data source, and share your Google Sheet with the appropriate email.
Â
![How to Schedule Ad Customizers for Google RSAs [2024]](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMTc3IDUzOCIgd2lkdGg9IjExNzciIGhlaWdodD0iNTM4IiBkYXRhLXU9Imh0dHBzJTNBJTJGJTJGdGludWl0aS5jb20lMkZ3cC1jb250ZW50JTJGdXBsb2FkcyUyRjIwMjMlMkYxMSUyRlNjcmVlbnNob3QtMjAyMy0xMS0yMS0xNjI5MjEuanBnIiBkYXRhLXc9IjExNzciIGRhdGEtaD0iNTM4IiBkYXRhLWJpcD0iIj48L3N2Zz4=)
Â
And there you have it â Google will automatically pull in the data you populated in the sheets into your RSAs.
Common Challenges When Scheduling RSA Ad Customizers
When we test these sheets with our clients in the wild, weâve uncovered five common challenges. Be on the lookout for these issues â solving them before they happen can save you a lot of trouble down the line.
Not scheduling your upload when the site changesÂ
The first and most significant hurdle is the mismatch between the scheduled data upload and website content updates. For instance, if the Google Sheet is set to upload at 11 am, but the website changes occur at 3 pm, thereâs going to be a discrepancy where the wrong message could be displayed for several hours, or new messaging could appear prematurely. Conversely, if the website updates happen before the scheduled sheet upload, outdated promotions might linger until the new data is imported. Synchronizing these schedules is crucial; itâs best to align them so updates occur simultaneously.
Skipping QA during a message change
Another pitfall is neglecting quality assurance (QA) during message updates. Itâs vital to regularly check the business data section to verify that the correct values are in place post-update.
Issues with the IMPORTRANGE function
Then thereâs the technical aspect of setting up the IMPORTRANGE function correctly in the Google Sheets template. The âchildâ template must reliably pull data from the âparentâ sheet. If this function isnât configured correctly, data wonât be imported as needed.
Not sharing access of the Google template for automatic uploads
Pay attention to your access permissions for the Google Sheets template. Google will prompt you with the email address that needs permission to access the âchildâ sheet for automatic uploads. Overlooking the sharing of your sheet with this address will prevent the system from working.
![How to Schedule Ad Customizers for Google RSAs [2024]](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMTcxIDE2NiIgd2lkdGg9IjExNzEiIGhlaWdodD0iMTY2IiBkYXRhLXU9Imh0dHBzJTNBJTJGJTJGdGludWl0aS5jb20lMkZ3cC1jb250ZW50JTJGdXBsb2FkcyUyRjIwMjMlMkYxMSUyRlNjcmVlbnNob3QtMjAyMy0xMS0yMS0xNjMxMDIuanBnIiBkYXRhLXc9IjExNzEiIGRhdGEtaD0iMTY2IiBkYXRhLWJpcD0iIj48L3N2Zz4=)
Having date range gaps in your parent sheet
Lastly, a common oversight is leaving date range gaps in the âparentâ sheet. Every single date must be accounted for without overlaps. A practical tip is to have an âevergreenâ backup message ready, scheduled to run continuously, ideally through the end of the year, to cover any potential gaps.
Conclusion
Leveraging Google Sheets in conjunction with Google Ads to schedule RSA ad customizers is a game-changer for managing dynamic promotional content. This process not only streamlines your workflows but also ensures that your ads remain relevant and up-to-date, reflecting current promotions without the need for constant manual intervention.Â
By adopting this method, youâll save significant time and effort, allowing you to focus more on strategy and less on the minutiae of ad copy updates. Give it a try and experience a more efficient way to manage your RSAs, keeping your campaigns fresh and engaging with minimal hassle.