Hi,
Thank you for contacting the Google Ads API support team.
1. Yes, with the basic access hitting 2,500 AddOfflineUserDataJobOperationsRequest calls per day likely exceeds the quota limit. According to this documentation, with basic access a mutate request cannot contain more than 10,000 operations per request and you are planning to execute 500 AddOfflineUserDataJobOperationsRequest calls, each containing 10,000 OfflineUserDataJobOperation.
2. Yes, batching is highly recommended in this scenario. Note that use of batching can reduce the number of requests sent but its use must be evaluated to see if it's a good fit for your needs. The main reasons for using batch processing are to minimize the number of API requests and retry operations that fail due to transient errors. Batching 10,000 users per request and reducing to 50 as per list per day can hardly make 250 mutate calls per day.
3. To avoid RESOURCE_EXHAUSTED error, set up short delays between requests or combine more operations in fewer requests. I would recommend you to check this sample code for how to Handle a Rate Exceeded Error for more information and Best practices guide to optimize the efficiency and performance.
4. According to Access Levels and Permissible Use documentation, having standard access will allow you to make unlimited API calls. I would recommend you to avoid sending too many requests at a time, so that you can make any number of API calls with standard level access.
![]() |
Google Ads API Team |
[2025-06-10 09:03:50Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01remZC:ref" (ADR-00313411)
In my setup, I upload Customer Match data using AddOfflineUserDataJobOperations, where each OfflineUserDataJobOperation contains one hashed email (i.e., one identifier), and I batch 10,000 operations per AddOfflineUserDataJobOperationsRequest.
Does the 15,000 daily operations limit refer to:
The total number of OfflineUserDataJobOperation entries (i.e., user-level operations like hashed emails), (If so am I limited to uploading only 15000 identifiers a day with Basic token?)
or
The number of API requests (e.g., calls to AddOfflineUserDataJobOperations and RunOfflineUserDataJob)?
Best regards,
S.Kethiri
Hi,
Kindly check the below answers for your queries:
The total number of OfflineUserDataJobOperation entries (i.e., user-level operations like hashed emails), (If so am I limited to uploading only 15000 identifiers a day with Basic token?)
The number of API requests (e.g., calls to AddOfflineUserDataJobOperations and RunOfflineUserDataJob)?
If you are facing any issues, then kindly provide us with the OfflineUserDataJob Id and complete API logs (request and response with request-id and request header) generated at your end.
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.
![]() |
Google Ads API Team |
[2025-06-19 08:57:42Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01remZC:ref" (ADR-00313411)
![]() |
Google Ads API Team |
[2025-06-19 17:17:31Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01remZC:ref" (ADR-00313411)