Head to head · Ad reporting · October 2026 research run

Google Ads API vs X Ads API

Google Ads API scores 76.4 (BB) on agent readiness against X Ads API's 57.3 (C), and leads in every scored category. Both do ad reporting.

Best advertising platform APIs for AI agents · All 28 advertising comparisons

Which one, for what

Google Ads API BB

Good for It suits an agent that reports on or manages Google Ads accounts for an advertiser or agency that can get a Cloud project approved.

Ahead on

  • Reliability, 82 against 75
  • Schema & documentation, 84 against 64
  • Agent ergonomics, 87 against 62
  • Security & auth, 71 against 48
  • Payments & pricing, 40 against 20
  • Maintenance & community, 87 against 63
  • Transparency & trust, 82 against 62

Also in its favour

  • Agent-ready, a grade of BB or better
  • Runs on your own machine

Watch for

One OAuth scope, adwords, covers reading, editing, creating and deleting. Read-only access depends on the Google Ads user role

X Ads API C

Good for An agent that manages or reports on X campaigns for an advertiser with an approved developer app, especially through the MCP server, where scopes separate reads from writes and writes start paused.

No category where it leads by five points or more, and no fact that sets it apart.

Watch for

No OpenAPI file covers the Ads API. The published file (version 2.170, 178 paths) describes api.x.com only

Score by category

CategoryWeight this runGoogle Ads APIX Ads APIEdge
Reliability16%208275Google Ads API +7
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28464Google Ads API +20
Agent ergonomics13%16.28762Google Ads API +25
Security & auth14%17.57148Google Ads API +23
Payments & pricing10%12.54020Google Ads API +20
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88763Google Ads API +24
Transparency & trust7%8.88262Google Ads API +20
Negative events≤1500
Total76.4 · BB57.3 · C

Facts side by side

FactGoogle Ads APIX Ads API
KindHTTP APIHTTP API
VendorGoogleX Corp.
Hosted endpointhttps://googleads.googleapis.comhttps://ads-api.x.com/mcp
TransportsHTTP, stdio, Streamable HTTPHTTP
AuthOAuthOAuth
PricingFreeFree
x402nono
LicenceProprietary service under the Google Ads API terms. The client libraries and the google-ads-mcp server are Apache-2.0Proprietary service under the X Developer Agreement and its incorporated Developer Policy
Tools exposed3none
Read-only variant documentednoyes
llms.txtnoyes
Last release2026-09-232026-09-17
Terms last updated2019-02-212026-04-27
Privacy policy last updated2026-10-01couldn't be read
Customer content may train modelsyesnot found in the text
Terms restrict automated accessnot found in the textnot found in the text
Terms restrict benchmarkingnot found in the textyes
Terms or service can change without noticenot found in the textnot found in the text
Arbitration or class-action waiveryesyes
Popularity753 stars, 3.1M PyPI/wknone

Verdicts

Google Ads API

Test accounts are free and need no approval, and validate_only checks a change without running it. Production access needs a Google Cloud project approved at Explorer level or above and a person to set up OAuth. One OAuth scope covers both reads and writes. The official MCP server is read-only, self-hosted and at version 0.0.4.

X Ads API

Rate limits are published per endpoint type, a sandbox host never serves ads, and the X Ads MCP server has separate read and write scopes and creates campaigns paused. The REST API needs OAuth 1.0a signing and an approved app, no OpenAPI file covers it, and the official Python and Ruby SDKs were last released in May 2022.

Before you call either

Google Ads API

  1. Send validateOnly: true on a mutate first. It returns errors without making the change. Batch jobs don't support it
  2. Create campaigns with status PAUSED and enable them in a separate step, since an enabled campaign with a budget can spend
  3. Send login-customer-id (digits only, no hyphens) when you reach a client account through a manager account
  4. A failed request still counts against the daily operation quota. Paging with a valid next_page_token doesn't
  5. Wait at least 12 hours between account budget changes on one account, and use the Data Manager API for new Customer Match or offline conversion work

X Ads API

  1. Build against https://ads-api-sandbox.x.com/12/ first. Create a test account with POST accounts and a funding instrument there before touching a live account
  2. On HTTP 429 wait until the time in x-rate-limit-reset. On 503 wait for retry-after. The docs say apps that ignore these can be throttled or lose access without notice
  3. Read the account-level limit from x-account-rate-limit-* when present and use x-rate-limit-* only when it is absent
  4. For a read-only MCP session request ads.read offline.access only. Without offline.access the token expires in about two hours with no refresh
  5. Page with count (1 to 1,000, default 200) and cursor until next_cursor is null. Analytics endpoints page by time range instead, and with_total_count cannot be combined with cursor

Questions

Which is better for AI agents, Google Ads API or X Ads API?

Google Ads API scores 76.4 (BB) on agent readiness against X Ads API's 57.3 (C), and leads in every scored category.

Do Google Ads API and X Ads API need an API key?

Both use an OAuth sign-in.

Can an agent call Google Ads API and X Ads API without installing anything?

Yes. Google Ads API has a hosted endpoint at https://googleads.googleapis.com and X Ads API at https://ads-api.x.com/mcp.

Other comparisons with Google Ads API or X Ads API

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.