Confirm your developer token is allowlisted for Customer Match; as of April 2026, OfflineUserDataJobService uploads are disabled for non-allowlisted tokens (CUSTOMER_NOT_ALLOWLISTED_FOR_THIS_FEATURE).
Use the Google Ads Data Manager API (the current primary path for Customer Match uploads) to create or update a user list; authenticate with the same OAuth 2.0 flow as other Google Ads API calls.
Hash all PII fields (email, phone, first name, last name) with SHA-256 in lowercase normalized form before including them in the upload payload.
Submit the user data records to the Data Manager API endpoint, specifying the target customer ID and the user list resource name.
Poll the operation status until the job reaches a terminal state (SUCCEEDED or FAILED) and review any partial failure details.
Verify audience size in the Google Ads UI under Audience Manager; note that sizes below the minimum threshold (typically 1,000 matched users) will not serve.
Known gotchas
OfflineUserDataJobService for Customer Match is no longer available to non-allowlisted developer tokens as of April 1, 2026 — using it returns CUSTOMER_NOT_ALLOWLISTED_FOR_THIS_FEATURE; use the Data Manager API instead.
SHA-256 hashing must follow Google's normalization rules: lowercase, trim whitespace for email; E.164 format for phone — mismatched hashing drastically reduces match rates.
Customer Match is only available to accounts that meet eligibility requirements (spend history and policy compliance); ineligible accounts will receive an authorization error.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp