Google Ads Metadata Scraper avatar

Google Ads Metadata Scraper

Pricing

from $3.99 / 1,000 results

Go to Apify Store
Google Ads Metadata Scraper

Google Ads Metadata Scraper

Extract rich public advertiser and creative metadata from the official Google Ads Transparency Center with bounded rendered-page support and pure business dataset rows.

Pricing

from $3.99 / 1,000 results

Rating

0.0

(0)

Developer

Google API

Google API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Extract public advertiser and creative metadata from the official Google Ads Transparency Center. The Actor reads the public search, advertiser, and creative-detail pages and returns fields that the page actually exposes.

What it is useful for

  • Building a public competitor-ad library keyed by advertiser and creative IDs.
  • Reviewing public ad formats, platforms, regions, media previews, and last-shown dates.
  • Re-running bounded advertiser searches for market or creative research.

The Actor does not access Google Ads accounts, private APIs, private targeting settings, spend, conversion, payment data, credentials, or personal/contact data.

Inputs

Search by advertiser

Provide a public advertiser name or website. The Actor enters it into the Center's public search and selects the matching public advertiser result.

{
"searchQuery": "Nike",
"maxItems": 25,
"maxPages": 3,
"includeMedia": true
}

advertiserName and q are accepted aliases. Use queries or searchKeywords for several searches.

Inspect public URLs

Use startUrls for public Center home, advertiser, or creative URLs. sourceUrls, urls, url, and sourceUrl are accepted compatibility aliases. Custom URLs take precedence over generated searches.

{
"startUrls": [
{ "url": "https://adstransparency.google.com/advertiser/AR16735076323512287233?platform=SEARCH&region=US&safe=active" }
],
"maxItems": 50,
"sortBy": "advertiser_name_asc"
}

Only adstransparency.google.com public routes are accepted. Private RPC endpoints and sensitive query parameters are rejected.

Direct creative URLs return the matching creative rather than requiring a gallery card. Creative text and creativeHtml come from the currently visible official preview. Unobserved copy remains null; a preview image is not treated as text.

Filtering and limits

maxItems is the global normal-row limit. page selects a one-based advertiser-results page (1–20) for generated searches; direct URLs start at their supplied listing and use maxPages for bounded creative-grid scrolling. maxPages bounds those scroll rounds per source. deduplicate removes repeated creative IDs across sources. Optional filters are platform, region, adFormat, filterAdvertiserName, and verifiedOnly. Sorting supports source, advertiser_name_asc, creative_id_asc, and format.

{
"searchQuery": "Nike",
"platform": "SEARCH",
"region": "US",
"adFormat": "TEXT",
"verifiedOnly": true,
"maxItems": 20
}

Collection behavior

The Actor reads public pages from the Google Ads Transparency Center. If Google presents an access challenge or an unavailable page, the run summary and logs report it; the Actor does not bypass the challenge.

includeCreativeDetails opens public creative pages to enrich fields exposed by the detail view, including format, shown-in region, last-shown date, variation counts, media, rating, delivery, and destination text. It is disabled by default because it adds one bounded page request per inspected row, up to maxItems across the run.

When a public creative detail page displays country-dependent transparency disclosures, the Actor also preserves its targeting-information line, recipient-total wording, and subject-matter label. These stay null unless the corresponding labeled value is visibly present; the page's region filter is not treated as targeting evidence, and recipient text is not converted into an inferred count. Google says these extra disclosures are available only for ads served in certain locations.

Selecting the adFormat filter or sortBy: "format" automatically opens the needed public detail pages even when includeCreativeDetails is false. This makes format filtering and sorting use Google's source-reported format instead of silently treating an uninspected card as a non-match. These reads share the global maxItems detail-page cap; once it is used, no more format-dependent records are inspected. If a detail page does not expose a format, it remains unknown and does not match a specific format filter. With neither the detail toggle nor a format filter/sort selected, no creative detail pages are fetched by default. Preview images and videos are reported as media assets, not used to guess the official ad format; Google may render a text ad inside an image.

Output

Each normal row is pure public business data and can include:

  • Advertiser name, ID, public profile URL, legal name, country, approximate public ad count, and verified marker.
  • Creative ID, canonical URL, public format, platform, region, ad label, grid position, and variation details.
  • Creative text/headline/description when the public DOM exposes them as text, destination display text/domain, rating and delivery claims. Rasterized creative previews are represented by approved media URLs and dimensions; text is not guessed or OCR-inferred.
  • Approved Google-hosted media URLs, dimensions, last-shown text/date, and precision marker.
  • Public, region-dependent targeting, recipient-total, and subject-matter disclosures, only when shown on the creative page.

Fields are included only when the public source provides them; unknown details are not inferred. The run summary and source diagnostics are available separately from the dataset in the Output tab.

lastShown and lastShownText preserve Google's displayed wording. lastShownDate is populated only when the source text contains an explicit year; a yearless value such as Sep 1 remains raw, while its normalized date and estimated-ness fields stay null rather than inventing a year.

Example output

The following is shaped from the live Chrome check of Nike's public advertiser and creative pages. Values such as the advertiser profile, Advertisement (1 of 80), Shown in the United States, Last shown: Sep 1, 2026, Format: Image, and 1 of 3 variations are preserved only when Google exposes them. Unknown media URLs, destinations, ratings, and delivery claims stay absent rather than being guessed.

{
"advertiserName": "Nike, Inc.",
"advertiserId": "AR16735076323512287233",
"advertiserUrl": "https://adstransparency.google.com/advertiser/AR16735076323512287233?platform=SEARCH&region=US&safe=active",
"advertiserLegalName": "Nike, Inc.",
"advertiserBasedIn": "the United States",
"advertiserBasedInCountryCode": "US",
"advertiserAdCountEstimate": 9000,
"advertiserAdCountIsApproximate": true,
"advertiserVerified": true,
"advertiserVerifiedLabel": "Verified",
"creativeId": "CR03857847523435610113",
"creativeUrl": "https://adstransparency.google.com/advertiser/AR16735076323512287233/creative/CR03857847523435610113?platform=SEARCH&region=US&safe=active",
"canonicalUrl": "https://adstransparency.google.com/advertiser/AR16735076323512287233/creative/CR03857847523435610113?platform=SEARCH&region=US&safe=active",
"adFormat": "IMAGE",
"adFormatText": "Image",
"platform": "SEARCH",
"platformName": "Google Search",
"region": "US",
"regionName": "the United States",
"targetingInformationText": null,
"recipientCountText": null,
"subjectMatterLabel": null,
"adLabel": "Advertisement (1 of 80)",
"gridPosition": 1,
"gridTotal": 80,
"variationPosition": 1,
"variationCount": 3,
"variationText": "1 of 3 variations",
"creativeText": "Nike Hyperdiamond 4 Keystone Big Kids' Softball Cleats in Pink, Size: 13C | FZ8655-600 [Price]\\nNike",
"creativeHeadline": null,
"creativeHtml": null,
"creativeDescription": null,
"creativeImageUrl": null,
"creativeVideoUrl": null,
"creativeImageAlt": null,
"creativeImageWidth": null,
"creativeImageHeight": null,
"creativeImageAspectRatio": null,
"mediaType": null,
"mediaCount": 0,
"hasImage": null,
"hasVideo": null,
"creativeAssetHost": null,
"isMultiVariation": true,
"listingPageType": "advertiser",
"lastShown": "Sep 1, 2026",
"lastShownText": "Sep 1, 2026",
"lastShownDate": "2026-09-01",
"lastShownIsEstimated": false,
"destinationDisplayUrl": null,
"destinationDomain": null,
"ratingValue": null,
"ratingCount": null,
"deliveryClaim": null,
"adTopic": null,
"audienceSelection": null,
"firstShownText": null,
"firstShownDate": null,
"shownCountText": null,
"shownCountMin": null,
"shownCountMax": null,
"impressionsStartDate": null,
"impressionsEndDate": null,
"timesShownAvailableFromDate": null
}

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

Cost and limitations

No paid Google Ads API is required. Apify compute and storage usage depend on the number of sources, scroll rounds, and optional creative-detail pages. The public Center can change its UI, omit older ads by region/platform, or return access boundaries; the Actor reports those states instead of guessing.

Use the Actor only for lawful public-interest research and in accordance with Google's terms, applicable privacy rules, and the rights of advertisers and publishers. Keep request limits reasonable and do not use the output to infer private audiences or sensitive personal information.

Regional disclosure fields preserve Google's labeled ad topic, first-shown calendar date, audience-category inclusion/exclusion, and actual impression reporting window when visible. These are unknown (null) otherwise. The source's reporting window is not substituted with last-shown dates.