Skip to main content

Google Ad Transparency Scraper API

Written by Kadri - RichAPI Support Team

POST /google_ad_transparency_scraper_sync • Credits: 3 credits per returned ad

Google Ad Transparency Scraper reads the Google Ads Transparency Center and returns the ads that one domain runs. The response is a JSON array, and each object holds the advertiser ID, the creative ID, the ad format and the landing URLs. Each ad in that array costs 3 credits, or $0.06 on the 1,000 and 5,000 credit packs.

What does Google Ad Transparency Scraper do?

Google publishes every ad that a verified advertiser runs in the Google Ads Transparency Center. That center is a browser interface, and it returns no data to a program. Google Ad Transparency Scraper opens one Ads Transparency Center URL and reads the ad list behind it. The endpoint returns each ad as a JSON object with the advertiser ID, the creative ID, the format and the landing URLs. Marketing teams use the result to see which ads a competitor runs and which landing pages the competitor pays for. The data source is the public Google Ads Transparency Center.

Which endpoint does Google Ad Transparency Scraper use?

  • Method:POST

  • URL:https://api.richapi.ai/api/v1/google_ad_transparency_scraper_sync

  • Authentication:x-api-key header

  • Request format: JSON request body

  • Response: Synchronous JSON array

  • Credits: 3 credits per returned ad

Google Ad Transparency Scraper accepts the POST method only. Every parameter goes in the JSON request body. If you send GET, the API returns 405 with the message google_ad_transparency_scraper_sync only supports POST.

How to send a Google Ad Transparency Scraper request

  1. Copy your API key from the RichAPI dashboard.

  2. Open the Google Ads Transparency Center and build the URL for the domain that you want.

  3. Set that URL as google_ad_url in the JSON request body.

  4. Set limit to the number of ads that you want.

  5. Send a POST request to https://api.richapi.ai/api/v1/google_ad_transparency_scraper_sync.

  6. Send the API key in the x-api-key header.

  7. Read the ads from the JSON array in the response.

CAUTION: Always set limit. Google Ad Transparency Scraper charges 3 credits for each ad in the response. A run that returns 100 ads costs 300 credits, or $6.00.

cURL

curl -X POST https://api.richapi.ai/api/v1/google_ad_transparency_scraper_sync   
-H "x-api-key: YOUR_API_KEY"
-H "Content-Type: application/json"
-d '{
"google_ad_url": "https://adstransparency.google.com/?region=US&domain=clay.com",
"limit": 10
}'

Python

import requests

response = requests.post(
"https://api.richapi.ai/api/v1/google_ad_transparency_scraper_sync",
headers={"x-api-key": "YOUR_API_KEY"},
json={
"google_ad_url": "https://adstransparency.google.com/?region=US&domain=clay.com",
"limit": 10,
},
timeout=180,
)
response.raise_for_status()

ads = response.json()
print(len(ads), "ads =", len(ads) * 3, "credits")
for ad in ads:
print(ad["creativeId"], ad["format"], ad["landingDomain"])

Node.js

const response = await fetch(
"https://api.richapi.ai/api/v1/google_ad_transparency_scraper_sync",
{
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
google_ad_url: "https://adstransparency.google.com/?region=US&domain=clay.com",
limit: 10,
}),
},
);

const ads = await response.json();
console.log(`${ads.length} ads = ${ads.length * 3} credits`);
console.log(ads);

What parameters does Google Ad Transparency Scraper accept?

Parameter

Type

Required

Default

Description

google_ad_url

string

Yes

none

The Google Ads Transparency Center URL to read.

limit

integer

Yes

none

The maximum number of ads to return. The maximum accepted value is 100.

If you omit limit or send a value below 1, the API returns 400 with the message limit must be at least 1. and charges no credits.

Google Ad Transparency Scraper accepts these two parameters and no others. If you send any other field in the request body, the API returns 400 with the message Unknown input field(s): and the field name.

What URL goes in google_ad_url?

The Google Ads Transparency Center publishes advertiser data at https://adstransparency.google.com. Build the URL in a browser first, then copy it into google_ad_url. The verified example is:

https://adstransparency.google.com/?region=US&domain=clay.com

That URL carries two query parameters. region sets the ad market, and domain sets the advertiser domain. One request reads one URL, so send one request per competitor domain.

What does Google Ad Transparency Scraper return?

Google Ad Transparency Scraper returns a JSON array. Each element in the array is one ad creative. The block below is an example response for two ads of one advertiser.

[
{
"advertiserId": "AR01234567890123456789",
"creativeId": "CR09876543210987654321",
"adUrl": "https://adstransparency.google.com/advertiser/AR01234567890123456789/creative/CR09876543210987654321?region=US",
"format": "Text",
"lastShown": "2026-08-04",
"landingDomain": "clay.com",
"landingUrls": [
"https://www.clay.com/",
"https://www.clay.com/pricing"
]
},
{
"advertiserId": "AR01234567890123456789",
"creativeId": "CR11223344556677889900",
"adUrl": "https://adstransparency.google.com/advertiser/AR01234567890123456789/creative/CR11223344556677889900?region=US",
"format": "Image",
"lastShown": "2026-07-29",
"landingDomain": "clay.com",
"landingUrls": [
"https://www.clay.com/templates"
]
}
]

The example above holds 2 ads. That run costs 6 credits, or $0.12.

Which fields does a Google Ad Transparency Scraper ad hold?

Field

Type

Description

advertiserId

string

The Google advertiser ID of the account that runs the ad.

creativeId

string

The Google ID of the single ad creative.

adUrl

string

The Google Ads Transparency Center URL of the creative.

format

string

The creative format of the ad.

lastShown

string

The date on which Google last showed the ad.

landingDomain

string

The domain of the page that the ad opens. The value can be null.

landingUrls

array of string

The landing page URLs that the ad opens.

How much does Google Ad Transparency Scraper cost?

Google Ad Transparency Scraper costs 3 credits for each ad in the response. RichAPI counts the objects in the returned JSON array and multiplies that count by 3. The call carries no base fee. At $0.02 a credit, the rate on the 1,000 and 5,000 credit packs, one ad costs $0.06. Larger packs cost less per credit. 3 credits per result is the highest per-result rate that RichAPI charges.

Ads returned

Credits

Cost

0

0

$0.00

1

3

$0.06

10

30

$0.60

25

75

$1.50

50

150

$3.00

100

300

$6.00

The next table shows the cost of a batch of runs at 10 ads per run.

Runs

Ads per run

Ads returned

Credits

Cost

10

10

100

300

$6.00

50

10

500

1,500

$30.00

100

10

1,000

3,000

$60.00

RichAPI reserves limit multiplied by 3 credits before the call. RichAPI then charges 3 credits for each ad in the response and releases the rest of the reservation. For any response outside the 200 range, RichAPI refunds the whole reservation. A run that returns an empty array costs 0 credits.

How to control the cost of a Google Ad Transparency Scraper run

limit is the cost control for Google Ad Transparency Scraper. The response holds at most limit ads. The charge follows the ad count in the response, so a lower limit value gives a lower charge.

  1. Set limit on every request.

  2. Set limit to 10 for the first run against a new advertiser.

  3. Multiply limit by 3 to get the maximum credit cost of the run.

  4. Multiply that credit figure by the price per credit of your pack to get the maximum dollar cost.

  5. Raise limit only after the first run returns useful ads.

  6. Keep limit at 100 or below.

CAUTION: Set limit on every request.

Which errors does Google Ad Transparency Scraper return?

Status

Meaning

What to do

400

The request body failed validation.

Correct the field that the message names. Send google_ad_url and limit only.

401

The API key is missing or wrong.

Send a valid key in the x-api-key header.

402

The organization has too few credits for the reservation, or the team reached its monthly spend limit.

Buy credits in the dashboard, then send the request again.

403

The API key has no access to this endpoint.

Check the endpoint list of your plan in the dashboard.

405

The request used a method other than POST.

Send the request as POST with a JSON request body.

429

Too many requests.

Read the Retry-After header, wait, then send the request again.

500

The API failed.

Send the request again. If the failure repeats, write to [email protected].

502

The ad read failed or was refused.

Send the request again. If the failure repeats, write to [email protected].

504

The ad read took too long.

Lower limit, then send the request again.

A failure costs no credit. RichAPI refunds the whole reservation for every response outside the 200 range.

How to use Google Ad Transparency Scraper for competitive intelligence

  1. List the domains of the competitors that you track.

  2. Build one Ads Transparency Center URL for each domain.

  3. Send one request per domain with limit set to 10.

  4. Group the results by advertiserId to get one group per advertiser.

  5. Read format to see which creative formats the competitor buys.

  6. Read landingUrls to see which pages the competitor sends paid traffic to.

  7. Read lastShown to see which ads still run.

  8. Repeat the batch each week and compare creativeId values to find new creatives.

Ten competitor domains at 10 ads per domain return 100 ads. That batch costs 300 credits, or $6.00. A weekly batch of that size costs 1,200 credits per month, or $24.00.

CAUTION: Do not raise limit across a whole competitor list at once. Ten domains at 100 ads each return 1,000 ads and cost 3,000 credits, or $60.00.

Frequently asked questions

How does RichAPI count the credits for Google Ad Transparency Scraper?

RichAPI counts the number of objects in the returned JSON array and charges 3 credits for each object. A response with 12 ads costs 36 credits.

Does a Google Ad Transparency Scraper run that finds no ads cost credits?

No. A run that returns an empty JSON array costs 0 credits, because RichAPI charges per returned ad and adds no base fee. RichAPI refunds the whole reservation.

What is the highest value that limit accepts?

The maximum is 100 ads for one Google Ad Transparency Scraper request. A run of 100 ads costs 300 credits, or $6.00.

Is Google Ad Transparency Scraper synchronous?

Yes. Google Ad Transparency Scraper returns the full JSON array in the response of the same POST call. There is no job ID and no polling step.

How does Google Ad Transparency Scraper compare with Meta Ads Library Scraper?

Google Ad Transparency Scraper reads Google Ads Transparency Center data and costs 3 credits per returned ad. Meta Ads Library Scraper reads Meta Ads Library data and costs 1 credit per returned ad.

Why is Google Ad Transparency Scraper more expensive than other RichAPI endpoints?

Google Ad Transparency Scraper charges 3 credits per returned ad, which is the highest per-result rate in RichAPI. Set limit on every request to hold the cost of one run at a known ceiling.

Related articles

Did this answer your question?