How to Link Google Ads to Affiliate Campaigns Like a Pro

A Definitive Guide on Connecting Google Ads Traffic to Affiliate Revenue

If you’re an affiliate marketer using Google Ads to acquire traffic then you already know what a powerful channel it can be for generating affiliate sales. With the right keywords, targeting and ad copy you can find high value customers with strong purchase intent, making it an ideal way to increase your affiliate revenue.

What you might not know is how to link your affiliate sales to your Google Ads campaigns. If this is the case, you’re not able to measure your true ROI or optimize your keywords and ad copy which means you could be missing out on a lot of potential revenue.

You also could be missing out on Google Ads automated bidding and optimization features which use historical conversion data to drive better results from your campaigns.

Normally if you’re doing PPC affiliate marketing with Google Ads it will involve one of two scenarios:

1.You’re using Google Ads to drive traffic directly to a merchant’s website

2.You’re using Google Ads to drive traffic to your website (e.g. a comparison site or coupon site) and getting a commission on sales generated by outbound affiliate links

Scenario 1 is fairly self-explanatory (albeit less common these days, as many merchants and networks restrict this practice). But in Scenario 2 in which you’re running Google Ads campaigns to your website, you’ll be able to see which campaigns brought you the most clicks (and at what cost) but you won’t be able to know which clicks led to actual sales. So while you’ll be able to get a very rough idea of ROI by looking at your overall Google Ad costs and your overall net commission, you won’t be able to measure sales performance at campaign, ad group, ad or keyword level.

One solution could be to use third party trackers. However, since Google Ads rolled out Parallel Tracking this has become more challenging and more labor-intensive. It can also be costly, with pricing models for third party trackers often based on a pay per click basis (this can rapidly add up as your online activity grows!).

Fortunately there is a solution that doesn’t involve third party trackers and is easy to implement. And it involves gclids.

Gclid is Google’s unique click identifier; a query string appended to the URL that looks like this:

Google Ads uses the gclid to pass on details like campaign, ad group, keyword, match type etc to Google Analytics and other Google properties.

The great thing about gclids is that they are unique to each ad click. This means that if you can find a way to pass the gclid on to your affiliate networks when a user makes a purchase, you’ll be able to associate that sale with the exact click (and exact keyword, ad, ad group and campaign) the user came from.You can also - and this is the really exciting bit - use gclids to upload your offline affiliate conversion data into Google Ads! That way, you’ll be able to drill down in your Google Ads reports and find your best and least performing keywords/ads/adgroups/campaigns using actual affiliate sales data.

So let’s break down how to:
a) pass on the gclid value
b) upload your conversions to Google Ads

Set Up Your Tracking Template

For Scenario 1 (where you are sending traffic to the merchant’s website via Google Ads) all you need to do is make sure you are capturing the gclid through your tracking template.

For Scenario 2 (where your ads are sending traffic to your own website and subsequently converting through an outbound affiliate link to a merchant site) you’ll need to go through almost the exact same steps but you’ll also need to do some extra work behind the scenes.

If you’re not familiar with tracking templates in Google Ads:

  • They allow you to easily add customized tracking parameters to all your URLs.
  • You can create them at account, campaign, ad group, ad and keyword level.
  • A tracking template at the account, campaign, or ad group level applies to all of the ads in the corresponding account, campaign or ad group.
  • If you use multiple tracking templates at different levels - for example, at both campaign and ad group level - the most specific template overrides the broader one, so in this particular example the ad group level template would be used.
  • The most specific is the keyword level, ascending upwards through ad, ad group, campaign and account.

To create a tracking template at the account level, go to ‘All Campaigns’ and select the ‘Account Settings’ tab. (NB: To create or edit a tracking template at campaign, ad group, ad or keyword level, select the ‘URL Options’ available at each individual level.)

You can add any parameters you want to the tracking template, and for a full list of dynamic Value Track parameters you can have a look here.

Most networks allow you to use one or more custom parameters as you see fit (often called the SubID). You can use one such custom parameter to store your gclid, so for example, under ‘Tracking Template’ you could enter something that looks like the following:{gclid}&utm_source=google&utm_medium=cpc&utm_content={creative}&utm_term={keyword}&utm_campaign={campaignid}

In order to ensure that all of this data is collected at the advertiser end as well you need to add the same tracking parameters to the ‘Final URL suffix’. This ensures that these parameters are appended to the actual landing page URL as well as to your affiliate tracking link.

For example:

If you’re sending traffic to your own website and not using an affiliate link then you won’t need to update the ‘Final URL suffix’. The tracking template will suffice.

Tip*: if your tracking template is at the account, campaign or ad group level and you’re also using more than one landing page (which you most likely will be) you’ll need to use a value track parameter that dynamically inserts your Final URL e.g.


*Note that this is only applicable if you’re sending traffic to your own website (i.e. there is no tracking link and you are sending ad clicks directly to your Final URL). If you’re sending traffic to a merchant site you’ll need to enter the actual affiliate link at the start of the tracking template regardless. And remember that if you are using different affiliate links for different ads in your account you’ll need to update the tracking template at the appropriate level in the hierarchy to ensure that your ads are going to the relevant affiliate link (this may well entail ad group or ad level tracking templates depending on your account design).

So there you go, now every ad click will create a URL with a custom field containing the gclid.


Sending traffic to your own website

Now, if you’re sending Google Ads traffic to your own website, in order to ensure you append the gclid to your outbound affiliate links, you’ll need to ask your developer to implement some code for this - or alternatively if you’re already using or thinking of using Trackonomics to consolidate your cross-network data, you can opt into Funnel Relay - a built-in feature of the Trackonomics suite of tools - which automatically does this for you and can also give you insight into the value you’re getting from all your other traffic sources.

Import conversion data into Google Ads

The Setup

1. The first thing you need to do is to make sure you’ve enabled auto-tagging in your Google Ads account. If you’re not sure go to All Campaigns - Settings - Account Settings and select ‘Yes’ for auto-tagging if it’s not already enabled

2. Now you need to create a conversion action (or multiple conversion actions) in your Google Ads account. To do this you need to go to Tools - Measurement - Conversions

3. Click on the plus button to create a new conversion

4. Select ‘Import’ from the four different types of conversions available

5. Then select ‘Other data sources or CRMs

6. Choose ‘Track conversions from clicks’ and then press ‘Continue’

7. Choose a ‘Conversion Name’. Make sure you are accurate and consistent about spelling and capitalization as you will be using this same Conversion Name when uploading conversion data in your import template

8. Then choose the most appropriate category for your conversion. This will most likely be Purchase/Sale for the purposes outlined above

9. Now you need to select a ‘Value’ for your conversions. You may choose not to use a value at all, give each conversion the same value, or assign different values per conversion. If you’re tracking purchases with different prices and want to be able to see which campaigns/keywords are generating the most revenue, you probably want to select ‘Use different values for each conversion’. You can read more about conversion values here

10. Next you need to select how you want Google Ads to ‘count’ the conversions. There are two options here: ‘Every’ and ‘One’. Selecting ‘Every’ means that if one click generates multiple purchases these will count as multiple conversions. If you had selected ‘One’ these three purchases would have been counted as one conversion only. Counting ‘every’ conversion is probably more applicable for affiliates in these contexts, but use your judgement depending on the specific requirements of your campaigns and KPIs

11. Now choose your ‘conversion window’ - i.e. how many days after an ad click you want to keep tracking for associated conversions. This can be up to 90 days

12. Choose whether you’d like to include this conversion in your ‘Conversions’ column (this is the one that appears in your standard reports and is also the basis for any automated bidding features. It’s ‘Yes’ by default so you’ll need to uncheck it if you decide you don’t want this. Remember that you won’t be able to use automated bidding based on these imported conversions if you decide to opt out

13. All that’s left is choosing your desired attribution model. Think about whether you want to give all credit to the first click, to the last click or if you want a more weighted model (e.g. linear, time decay or position based). You can also choose to use your own external attribution model but bear in mind that you won’t be able to subsequently switch back to a Google Ads attribution model, so think carefully before deciding

Prepare for Upload

1. First you’ll need to download an import template. You can find the templates by going to Tools→ Measurement → Conversions and then selecting ‘Uploads’ in the menu on the left

2. Click on the plus button and then select ‘View templates'

3. Then choose a suitable ‘conversion from clicks’ template

4. Now you need to make sure you have your gclid report ready from your affiliate network or affiliate data consolidation tool. Crucially, for Google Ads to identify a unique conversion, you’ll need to have the gclid and a time stamp

5. Make sure you don’t add any columns to the template or change the ‘Google Click ID’ (i.e. gclid) column. If you do this the upload will not work

6. Fill in the columns in your template for Google Click ID, Conversion Name (remember - this needs to be exactly as it is written in the conversion you created above with the same spelling and capitalization), Conversion Time (see here for suitable formats), Conversion Value (if relevant) and Conversion Currency (if relevant and your reports contain conversion values in different currencies)

7. You also will need to enter your Google Ads  time zone. You can read about suitable formats here. By now your file should start to look something like this:

8. Once you’ve entered all your data, return to ‘Uploads’ (i.e. Tools→ Measurement → Conversions and then select ‘Uploads’ in the menu on the left)

9. Click on the plus button and then choose the appropriate option from the ‘Source’ drop down menu. If, for example, you’ve used a Google Sheets template, select Google Sheets and then ‘Choose File’

10. Before selecting ‘Apply’ it’s usually best to first do a ‘Preview’ to check for any errors. If your preview works well without errors you’re ready to hit ‘Apply File’! You can select ‘Details’ to see all the conversions that have been imported

11. Bear in mind - and this is important - that Google Ads usually needs a gap of 24 hours between the ad click and the conversion import in order to register the conversion. For this reason it’s best practice to upload an extra day worth of data just in case. Google won’t register any duplicates so there’s nothing to worry about in doing this (the gclid and time stamp make sure of that)

12. If you want to automate or schedule your uploads you can read more about how to do so here

Start Optimizing!

So there you have it, now you have your offline sales data in Google Ads. You can start optimizing your campaigns right away, and you can even start testing out some automated bidding features as soon as you have sufficient conversion history (requirements vary depending on bidding type).

Streamline your workflow

Once everything is set up, uploading the offline conversions on a daily/weekly basis is quick and easy. However, if you’re using multiple affiliate networks you might find that exporting your gclid reports from each individual platform is repetitive and time consuming.

If this is the case, you might benefit from an affiliate data consolidation solution such as Trackonomics. You’ll be able to see one single report for all your gclids from multiple affiliate networks and easily export the data for your offline conversion import template.

If you want to give it a test run, you can schedule a demo here.