0% Customer Match for Search, High Match Rates for Display and Gmail

107 views
Skip to first unread message

John Joe Smith

unread,
Aug 5, 2024, 8:02:38 PM8/5/24
to Google Ads API and AdWords API Forum
Hello,

When we upload audience lists, we're seeing a 0% match rate for Search, but a decent match rate for other campaign types like Display and Gmail. Are there additional requirements, IDs or params we need to include in this audience for our users to populate for Search campaigns? See below for the Google Ads API response to such an upload from our logs.

iex(wa...@10.1.139.55)2> Waste.Targets.sync_current_target_audience_user_list_measurements(ta) {:ok, %Waste.Targets.TargetAudienceSizeMeasurement{ __meta__: #Ecto.Schema.Metadata<:loaded, "targets_audiences_size_measurements">, id: 1, size: 0, measured_at: ~N[2024-07-25 17:57:17], match_rate_percentage: 100, search_size: 0, display_size: 9900, target_audience_id: "f3258e52-41dd-4753-8af4-33cb76d30f0f", target_audience: #Ecto.Association.NotLoaded<association :target_audience is not loaded>, inserted_at: ~N[2024-07-25 17:57:17], updated_at: ~N[2024-07-25 17:57:17] }}

Google Ads API Forum Advisor

unread,
Aug 6, 2024, 6:59:01 AM8/6/24
to joh...@wastenot.tech, adwor...@googlegroups.com
Hi,

Thank you for reaching out to the Google Ads API support team.

I understand that when you upload audience lists, you're seeing a 0% match rate for Search campaigns, but a decent match rate for other campaign types like Display and Gmail and you want to know the reason behind this discrepancy. Kindly note that a list could appear smaller than expected when viewed in the Audience Manager from the Google Ads UI. This view shows the number of active users in the list. For more information, see this troubleshooting guide.

Google Ads only uses a Customer Match user list for targeting if it has met a minimum threshold of active users at the time the ad is served; active users is the number of users on your list who are active on Gmail, Search, YouTube, or Display. Upload at least 5,000 members to increase the chance of having enough matched, active users for targeting. Use this guide to help you troubleshoot low match rates and common errors that might come up in your Customer Match integration.

In order to further investigate your issue, could you kindly provide the customer ID and the audience list ID? Also, provide us with the complete API logs (request and response logs with request-id and request header) generated at your end to better assist you further. 

If you are using a client library and haven't enabled the logging yet, I would request you to enable logging for the specific client library that you are using. You can refer to the guides Java, .Net, PHP, Python, Ruby or Perl to enable logging at your end. For REST interface requests, you can enable logging via the curl command by using the -i flag.

You can send the details via Reply privately to the author option, or direct private reply to this email.
 
This message is in relation to case "ref:!00D1U01174p.!5004Q02vEaBn:ref" (ADR-00261067)

Thanks,
 
Google Logo Google Ads API Team


John Joe Smith

unread,
Oct 15, 2024, 12:45:28 PM10/15/24
to Google Ads API and AdWords API Forum
Hello,

I just responded with the details in a private email to keep them hidden from the group. Please let me know where I should check for a response. Thank you.

Google Ads API Forum Advisor

unread,
Oct 16, 2024, 2:25:58 AM10/16/24
to joh...@wastenot.tech, adwor...@googlegroups.com
Hi,

After checking your account '683-110-2517' for the user list '8719539982', I could see that the oct 15 and 16, 2024 jobs are in 'RUNNING' status which means upload(s) have been accepted and data is being processed. You may also check by running the below sample query, replace offline_user_data_job.id to specific jobid data you want to retrieve data. 
{
  "query": "SELECT offline_user_data_job.customer_match_user_list_metadata.user_list, offline_user_data_job.external_id,offline_user_data_job.failure_reason,offline_user_data_job.id,offline_user_data_job.operation_metadata.match_rate_range,offline_user_data_job.resource_name,offline_user_data_job.status,offline_user_data_job.store_sales_metadata.loyalty_fraction,offline_user_data_job.store_sales_metadata.third_party_metadata.advertiser_upload_date_time,offline_user_data_job.store_sales_metadata.third_party_metadata.bridge_map_version_id,offline_user_data_job.store_sales_metadata.third_party_metadata.partner_id,offline_user_data_job.store_sales_metadata.third_party_metadata.partner_match_fraction,offline_user_data_job.store_sales_metadata.third_party_metadata.valid_transaction_fraction,offline_user_data_job.store_sales_metadata.third_party_metadata.partner_upload_fraction,offline_user_data_job.store_sales_metadata.transaction_upload_fraction,offline_user_data_job.type FROM offline_user_data_job where offline_user_data_job.id=***********"
}
According to the documentation, once the OfflineUserDataJob has a SUCCESS status, the estimated match rate is available in the operation_metadata.match_rate_range field. If you query this field before the job completes, the value in this field might be zero. To ensure your match rate is ready for verification and the list ready for targeting, we recommend polling the job for completion.

Kindly note that, it can take as little as 10 minutes or up to 24 hours for the job to complete.​ Since it can take up to 24 hours for a list to be populated with members, you might see an 'In progress' status in the Google Ads UI if you upload to an audience list more frequently than once every 12 hours. Let us know if you have any further queries.​ 

For Oct 8, 2024 the job was successful and the match rate was 91%-100%, if you are seeing a 0% match rate kindly provide us with the complete API logs (request and response logs with request-id and request header) generated at your end to better assist you further. 
Reply all
Reply to author
Forward
0 new messages