AdWords
4.9K members online now
4.9K members online now
Dive into advanced features like Remarketing, Flexible Bid Strategies, AdWords Editor, and AdWords Scripts
Guide Me
star_border
Reply

GCLID Captured During Signup Differs from GCLID Extracted Via Click Performance Report

[ Edited ]
Visitor ✭ ✭ ✭
# 1
Visitor ✭ ✭ ✭

Hey Adwords community,

 

I'm capturing the GCLID during the signup process, so we have a list of GCLIDs that are associated with actual signup info on the individual level.

 

I wanted to try and tie this information back to AdWords data to discern which campaign these leads came from (and ad group, type of device, etc), so I used the following script to download a list of GCLIDs from the Click Performance Report:

 

function main (exportReportToSpreadsheet) {
  var spreadsheet = SpreadsheetApp.create('CLICK_PERFORMANCE_REPORT_TEST');
  var report = AdWordsApp.report(
    'SELECT CampaignName, AdGroupName, Date, Device, KeywordMatchType, Page, UserListId, GclId ' +
    'FROM   CLICK_PERFORMANCE_REPORT ' +
    'DURING TODAY');
  report.exportToSheet(spreadsheet.getActiveSheet());
}

But when I cross check the list of GCLIDs generated from this script against the list of GCLIDs that I have associated with leads, there is shockingly little overlap (<1% of GCLIDs were in both sets). Is this expected? It seems like these IDs are being newly generated every time I run the script as a test.

 

That would be disappointing but it would at least be consistent, rather than just giving me a handful of IDs that match. Any thoughts would be appreciated.

 

Owen

1 Expert replyverified_user

GCLID Captured During Signup Differs from GCLID Extracted Via Click Performance Report

Top Contributor
# 2
Top Contributor

Hello, Owen. I haven't run that script, as I'm using Google Analytics for conversion tracking (and Analytics is linked with AdWords, so all information you're looking for via the gclid is already there).

 

However, I'm not quite sure why you're surprised. That click report is supposed to give you all gclids (one per click, as each gclid is unique). Plenty of  them, under normal circumstances. On the other hand, the gclids associated with leads should be less. Ideally, if no gclids were lost, the ratio should be (lead gclids)= (total gclids) x (conversion ratio). So if your conversion ratio is around 1%, then the lead gclids should represent about 1% of the total gclids.

 

If you're running the script with TODAY as date range, it's normal to see new gclids all the time, as you're getting new clicks all the time. Try using a date range in the past and the gclids should no longer change.

 

Hope it helps.

Calin Sandici, AdWords Top Contributor | Find me on: Google+ | Twitter | LinkedIn | myBlog
Was my response helpful? If yes, please mark it as the ‘Best Answer.’ Learn how here.

GCLID Captured During Signup Differs from GCLID Extracted Via Click Performance Report

Visitor ✭ ✭ ✭
# 3
Visitor ✭ ✭ ✭

Hi Calin,

 

Thanks for the reply! Just for context, my Analytics and AdWords accounts are linked as well. I've imported a goal from Google Analytics as the Conversion that I want to track in AdWords.

 

I also understand that Analytics parses/interprets the GCLID so that it can accurately attribute conversions to campaigns, etc. However, all these numbers are only shown in aggregate; effectively, as you know, you can really only see how many conversions are happening, and from where, but you can't see who.

 

My company offers a service, so not all customers have the same customer value. It would be valuable to me to be able to see what campaigns and ad groups are attracting my most valuable customers.

 

You do raise a good point though; for some reason I was thinking that the click performance report would only give me GCLIDs associated with conversions, but of course that wouldn't make sense. What threw me off is that the report can only be run for one day at a time, and when I tried to fiddle with the date, it said the only valid fields were TODAY, YESTERDAY, and then multiple day values. When I tried to use the multiple day values, they were invalid Smiley Happy

 

I will test and see if I can choose a specific day in the past within the valid 90 day window using some kind of date timestamp. 

 

Thank you for your help!

 

 

 

Re: GCLID Captured During Signup Differs from GCLID Extracted Via Click Performance Report

[ Edited ]
Visitor ✭ ✭ ✭
# 4
Visitor ✭ ✭ ✭

Update: Does anyone have any insight as to how I could specify a specific day in more than 1 day in the past? 

 

For this script:

function main (exportReportToSpreadsheet) {
  var spreadsheet = SpreadsheetApp.create('PAST_CLICK_REPORT_ATTEMPT');
  var report = AdWordsApp.report(
    'SELECT CampaignName, AdGroupName, Date, Device, KeywordMatchType, Page, UserListId, GclId ' +
    'FROM   CLICK_PERFORMANCE_REPORT ' +
    'DURING 010117');
  report.exportToSheet(spreadsheet.getActiveSheet());
}
                       

 

Currently, I'm trying to enter in a date and the error that I'm getting is as follows:

Valid values: TODAY, YESTERDAY, LAST_7_DAYS, THIS_WEEK_SUN_TODAY, THIS_WEEK_MON_TODAY, LAST_WEEK, LAST_14_DAYS, LAST_30_DAYS, LAST_WEEK, LAST_BUSINESS_WEEK, LAST_WEEK_SUN_SAT, THIS_MONTH, LAST_MONTH (line 3)

 

Basically it seems as though I can only specify either TODAY or YESTERDAY, because the CLICK PERFORMANCE REPORT has a single-day date-range. Is it possible to go any further back than two days?

 

Thanks!

GCLID Captured During Signup Differs from GCLID Extracted Via Click Performance Report

Badged Google Partner
# 5
Badged Google Partner

Hi Owen,

 

At least in the API, instead of the literals (TODAY, YESTERDAY, ...) you can use specific dates in YYYYMMDD format, I assume it works for scripts as well.

 

So using 'DURING 20170228' would give you last day of Feb, 'DURING 20170201,20170228' gives you the whole of Feb.

GCLID Captured During Signup Differs from GCLID Extracted Via Click Performance Report

Visitor ✭ ✭ ✭
# 6
Visitor ✭ ✭ ✭

Hey Ken! Thanks so much for the reply. Unfortunately the YYYYMMDD format didn't work either; I still got that same error about the literals. I guess I might have to resort to using the API, which will involve learning how to do so, first :\