Audience targeting in ad platforms such as Google Ads or Bing Ads is a go-to tactic for digital advertisers to drive down cost-per-click (CPC) and increase efficiency in paid search campaigns. Targeting helps you avoid serving ads to leads that won’t convert, as well as to create specific retargeting lists for existing customers. But if you lack the real-time customer insights needed to keep these lists relevant, you might find yourself with a mountain of manual updates to work through. Or worse - you’ll waste valuable ad spend and miss out on future customers.
In this post, we’ll show you how to significantly improve your return on ad spend (ROAS) by integrating customer data from your CRM to power an automated process for managing exclusion lists and retargeting. Not only will this process slim down your ad budget, but it will also save you a significant amount of time and reduce manual effort. You won’t have to go digging in other sales and marketing tools to find the latest data on existing or disqualified customers. Instead, you can focus on designing more high-converting campaigns that spark the interest of your ideal audience.
To automate audience targeting in your ad platform, we’ll use a General Automation Platform (GAP), a low-code platform for creating automated processes called workflows. GAPs let you easily integrate your favorite applications with logic-based helpers inside a drag-and-drop visual interface.
We’ve separated our audience targeting process into two stages:
For this example, we’ll focus on maintaining an exclusion list for leads that we’ve marked as ‘disqualified’ in our CRM. We determine that these leads are ‘disqualified’ if they have a a lead score below a certain threshold in our CRM.
Note: Here at Tray.io, we use automation to score leads in our CRM, ensuring that we’re prioritizing the opportunities with the highest ROI. If you’d like to learn how to build out lead scoring in your organization, check out this blog post.
Let’s start with our batch workflow. We begin with a manual trigger, which lets us manually run this workflow at any time with the press of a button. We chose this trigger because we will likely need to run this workflow only once.
Creating a new list in our ad platform
Create list - We first create a list in our ad platform to house disqualified leads. We’ll match leads from our CRM to this list using their contact information.
Next, we need to pull records from Salesforce based on our targeting criteria.
Finding disqualified leads and updating our list
Paginate Salesforce - We use a loop helper to isolate batches of 2,000 records apiece in our CRM and apply additional logic. We complete this work in batches to not overwhelm Salesforce API limits.
Page offset - For each pass of our loop, we offset the starting value in our list to not overwrite the records from our previous loop pass. We calculate this value by multiplying the number of records in each pass by the number of loops already completed.
Find disqualified leads - Next, we find leads in our CRM that match our ‘disqualified’ criteria. These are likely leads that are already customers or can’t use our product. As a reminder, you can customize this definition to fit the needs of your business.
An example lead list in our CRM
Format leads for list - Here, we transform the lead list from our CRM into a format compatible with our ad platform. We can specify which data we use to find matches in this step, including each lead’s contact information.
Add leads to list - Now, we can push these leads to Google Ads. Our ad platform will then match this lead data with real people viewing our ads.
Once we’ve created the list in our ad platform, we need to assign it to a campaign as an exclusion list. We can create new exclusion criteria in Google Ads by going to audiences > exclusions in the campaign view, creating a new audience exclusion, and selecting the list we created.
Our finalized exclusion list in our ad platform
Now, let’s take a look at how we can automatically trigger updates to our exclusion list when we disqualify a lead. To start, we use a Salesforce trigger, which listens for any new lead updates. When a new update engages our workflow, this trigger returns the lead ID.
Updating exclusion lists in real-time
Format IDs - If we have received multiple lead updates in the same call, we use a list helper to format the list of lead IDs.
Get disqualified leads - Then, we call Salesforce again to retrieve the recently updated records that are marked as disqualified.
Loop through leads - Finally, we loop through each lead from our CRM and update our master list in our ad platform.
You’ve just made your PPC program much, much more efficient by creating automated exclusion lists and refined your ad targeting without considerable manual lift. With this process in place, you should see improved conversion rates and noticeably higher ROAS, while saving yourself the time and trouble of manually digging through lead lists to exclude.
The use case we’ve outlined here is quite simple, but could easily be revised to pull data from other sources, including marketing automation platforms (such as Marketo, Eloqua, or Hubspot) or sales engagement tools (such as Outreach or Salesloft). You can also integrate a customer data platform like Segment to surface custom ads based on the page that a lead visits, or pull product usage data from your data warehouse (such as Redshift, BigQuery, or Snowflake) to serve ads to existing users.
If you’re interested in discovering more automation ideas to increase efficiency across your organization and drive revenue growth, sign up for our next weekly group demo.