Google Ads Transparency Center Scraper
Pricing
$1.00 / 1,000 result items
Google Ads Transparency Center Scraper
Scrape Google Ads Transparency Center ads by domain or advertiser across 237 regions. Filter text, image, and video creatives on YouTube, Search, Display, Shopping, Maps, and Play.
Pricing
$1.00 / 1,000 result items
Rating
0.0
(0)
Developer
kane liu
Maintained by CommunityActor stats
1
Bookmarked
6
Total users
2
Monthly active users
19 hours ago
Last modified
Categories
Share
Scrape Google Ads Transparency Center creatives by domain or advertiser and export structured ad transparency data for competitor research, brand monitoring, and market analysis.
This Actor turns the public Google Ads Transparency Center into a schedulable dataset. Search by domain or advertiser, filter by creative format and Google platform, choose any supported region (or anywhere), and download advertiser, creative, preview, and destination fields as JSON, CSV, Excel, or XML.
Need a dedicated scraper for one website?
This Actor is the general tool for protected public pages. If you already have one specific site and a field list, a dedicated scraper is faster and more stable: listing + detail, your export format, delivered to your Apify account or as a standalone runnable client.
I confirm the tier before you pay. The clock starts after that confirmation.
Start here: Submit a custom scraper request
| Starter $50 | Dedicated $100 | Hard target $200–999 | |
|---|---|---|---|
| Site | 1 simple anti-bot public site | 1 medium anti-bot public site | Cloudflare / aggressive anti-bot / custom parser |
| Scope | Full listing + detail fields | Listing + detail + pagination, your field list | Agreed fields, repeatable runs |
| Delivery | CSV/JSON · Apify Actor or standalone runnable client (script/CLI) | Same, plus a sample run and short instructions | Feasibility first, then build |
| Time | 24 hours after we confirm the URL is in scope | 48 hours after confirmation | Quoted after feasibility |
| Fixes | 30 days for small public-layout changes | 30 days | Scoped in the quote |
Hard-target sites are not a 100% uptime promise. You get a dedicated parser that can be re-run on the agreed fields. If the URL is not feasible, you get a refund or pay an assessment fee only — you will know before the build starts.
Not in Starter/Dedicated: login-walled data, native APK / Windows installer / full web apps, or two-year maintenance. Those are a separate quote.
What this Google Ads Transparency Center scraper does
- Search Google Ads Transparency Center by domain or advertiser
- Process one or more targets in a single run
- Cover
anywhereplus 237 country/territory regions - Filter creative formats: text, image, video (or all)
- Filter platforms: YouTube, Search, Display, Shopping, Maps, Play (or all)
- Paginate SearchCreatives results with
maxPagesPerTarget - Collect advertiser IDs/names, creative IDs, format labels, preview URLs, detail URLs, first/last shown dates, and destination fields when available
- Optionally enrich rows with creative details and best-effort variant content parsing
- Write a
RUN_SUMMARYwith proxy, pagination, warning, and pay-per-event charge metadata
What data you can extract
Each dataset item is one creative-level row from Google Ads Transparency Center, including fields such as:
advertiserId,advertiserName,advertiserCountryRawcreativeId,detailUrl,previewUrl,dedupeKeyformatCode,formatLabelfirstShownRaw,lastShownRawheadline,description,destinationUrl,visibleUrl,redirectUrlvideoId,channelName,channelIconregion,searchMode,searchValue,targetLabelplatforms,creativeFormatswarnings,scrapedAt
Optional raw RPC fragments are available when includeRawJson=true:
rawSearchCreativesJsonrawCreativeJsonrawAdvertiserJson
Lead and contact fields
Every Dataset row includes the same lead shape. Google Ads Transparency Center is primarily an advertiser-identity and creative-destination source, not a business directory, so empty contact fields stay explicit and leadAbsences explains why they are empty.
| Field | Type | Google Ads Transparency Center meaning and source |
|---|---|---|
phones | [{value, type, e164?}] | Advertiser phone numbers attributable to the opened advertiser or creative surfaces. No visible phone, tel: value, or phone reveal control was present in the measured VN/DE surfaces, so current rows use [] with an honest absence reason. |
emails | [{value, type}] | Advertiser contact emails. No visible email, mailto: value, or email reveal control was present in the measured surfaces. |
address | {street, unit, locality, region, postalCode, country, full} | Advertiser postal address. unit means the street or door number. Current opened surfaces did not provide a postal address, and an advertiser regulatory country such as Vietnam is not copied into this object. |
geo | {lat, lng} | null | Coordinates that supplement, rather than replace, a postal address. Current advertiser and creative surfaces did not provide address coordinates. |
person | {name, role?} | null | A named individual advertiser contact. Current measured surfaces exposed organizations, not individual contacts. |
org | {name, id?, country?} | null | Advertiser identity from Search rows and the optional advertiser lookup. Examples include CÔNG TY TNHH TI KI and Zalando SE, with the AR... advertiser ID. org.country is a regulatory identity field, not a street address. |
web | {website, socials[], destinationUrl?, visibleDomain?, redirectUrl?} | The final advertiser landing page decoded from a creative preview payload, plus advertiser-owned social links when present. The Google click URL is kept as redirectUrl; it never replaces the final website. |
leadSource | search | detail | entity | contact | reveal-xhr | Surface that produced the lead. Organization-only rows use entity or detail; a decoded creative destination uses reveal-xhr. |
leadReveal | visible | click | xhr | gated | image | absent | How the lead became available. Advertiser identity is visible in Search/detail data; final destinations come from preview XHR content. |
leadAbsences | object/map | Per-field reasons such as 本站无 for a measured surface-wide absence or 未验证 when an optional lookup or preview failed for that item. |
Reveal and enrichment cost
There is no measured “show phone”, “show email”, or “show address” control, so the Actor does not spend a click or reveal XHR on those fields.
With enrichDetails=true (the default), each creative retained by the Search result limit can add a creative-detail RPC and a preview payload request. The worker also makes a best-effort advertiser lookup, cached by advertiser ID within the run. More pages and a higher maxCreativesPerTarget therefore increase run time, proxy traffic, and exposure to upstream rate limits. Search applies the requested result limit before this per-row enrichment, so this Actor does not enrich a larger hidden candidate pool and then discard it during final truncation.
Preview parsing decodes the final adurl from public creative content. The worker does not open or crawl the advertiser landing page itself. If creative detail, advertiser lookup, or preview parsing fails and strictErrors=false, the row remains usable with a warning and an item-level leadAbsences reason.
Honest lead limitations
- The accepted Actor Dataset contains advertiser organization identity, but its two sampled Zalando rows did not obtain a final preview landing page. Those rows correctly use
web.website=nullandleadAbsences.website=未验证. - A separate bounded live worker check proved final landing extraction with a Tiki creative. Availability still varies by creative format and preview payload.
- The optional
GetAdvertiserByIdlookup can return invalid or empty JSON. Search-derived advertiser name and ID remain valid, whileorg.countrystays null andleadAbsences.orgCountryrecords that it was not verified. phones,emails, postaladdress,geo,person, and advertiser-ownedweb.socialswere absent on the measured opened advertiser/creative surfaces. The Actor does not infer them from IDs, ad counts, dates, platform chrome, or the destination domain.- The input
regionis a Transparency Center collection filter. It is not a proxy country, a postal region, or evidence foraddress.country. - An advertiser country such as
Vietnambelongs toorg.country. It must not be presented asaddress.full,address.street, oraddress.unit. - Google may change numeric-key RPC shapes, signed preview URLs, or available creative material. Optional enrichment failures can therefore produce partial lead values without making the Search identity row false.
More Actors like this
Need Meta / TikTok ad libraries or another vertical? Use a dedicated Actor below for structured fields. Stay on this Actor for Google Ads Transparency Center domain / advertiser creative lookups (regional filters, formats, platforms).
Ads Intelligence (closest matches)
- Facebook Ad Library Scraper — Meta / Instagram ad creatives and transparency data
- TikTok Ads Scraper — TikTok Commercial Content Library + Creative Center Top Ads
Social & short-form video
- YouTube Research Scraper — keyword / search-based YouTube research (pair with YouTube ads intel)
- YouTube Shorts Scraper
- TikTok Scraper
- Reddit Scraper
Prefer a dedicated site scraper?
If your target has a specialized Actor below, use that first — usually cheaper and more structured than a generic scrape.
E-commerce
- Shopee Search Scraper
- Amazon Search Scraper
- SHEIN Product Scraper
- Temu Product Scraper
- Walmart Product Scraper
- Target Product Scraper
- Lazada Scraper
- Etsy Scraper
Jobs & Freelance
- LinkedIn Jobs Scraper
- Indeed Jobs Scraper
- Upwork Jobs Scraper
- Glassdoor Scraper
- Fiverr Gigs Scraper
- Bayt Jobs Scraper
Real Estate
- Zillow & Zumper Scraper
- Realtor.com Scraper
- Apartments.com Rental Scraper
- Rightmove Scraper
- Idealista Scraper
- realestate.com.au Scraper
Travel & Stays
Local & Maps
General tools
- Stealth Web Scraper — protected advertiser landing pages behind anti-bot
- Email Risk Validator
- Phone Number Intelligence
→ See the full catalog in Related Actors below, or browse apify.com/lentic_clockss.
How to scrape Google Ads Transparency Center ads
- Open the Actor and click Try for free.
- Keep
runModeasrealfor live Transparency Center data (fixtureis only for smoke tests). - Set
regionto a country code such asUS,VN,DE, or useanywhere. - Add one or more
targetswithsearchMode=domainoradvertiser. - Optionally filter with
creativeFormatsandplatforms. - Start with a low
maxCreativesPerTargetandmaxPagesPerTarget. - Run the Actor and export the dataset.
Example: domain monitoring
{"runMode": "real","region": "US","targets": [{"searchMode": "domain","searchValue": "nike.com","targetLabel": "Nike domain"}],"creativeFormats": ["video"],"platforms": ["youtube"],"maxCreativesPerTarget": 20,"maxPagesPerTarget": 2,"includeCreativeDetails": true,"includeVariantContent": true,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "US"}}
Example: multi-target advertiser research
{"runMode": "real","region": "anywhere","targets": [{"searchMode": "advertiser","searchValue": "Nike","targetLabel": "Nike advertiser"},{"searchMode": "domain","searchValue": "adidas.com","targetLabel": "Adidas domain"}],"creativeFormats": ["text", "image", "video"],"platforms": ["search", "display", "youtube"],"maxCreativesPerTarget": 30,"maxPagesPerTarget": 3}
Example output item
{"runId": "abc123","region": "US","searchMode": "domain","searchValue": "nike.com","targetLabel": "Nike domain","platforms": ["youtube"],"creativeFormats": ["video"],"advertiserId": "AR03132760982632267777","advertiserName": "Nike, Inc.","creativeId": "CR17251863590479069185","detailUrl": "https://adstransparency.google.com/advertiser/AR03132760982632267777/creative/CR17251863590479069185","formatCode": 3,"formatLabel": "video","previewUrl": "https://adstransparency.google.com/...","firstShownRaw": "2026-06-01","lastShownRaw": "2026-07-01","headline": null,"destinationUrl": null,"warnings": [],"scrapedAt": "2026-07-22T02:42:00Z"}
Input
| Field | Type | Default | Description |
|---|---|---|---|
runMode | string | real | real for live Google Ads Transparency Center requests; fixture for deterministic smoke tests. |
region | string | VN | anywhere or one of 237 supported country/territory codes. |
targets | array | required | One or more search targets. Every target is processed in order. |
targets[].searchMode | string | required | domain or advertiser. |
targets[].searchValue | string | required | Domain or advertiser value sent to Transparency Center. |
targets[].targetLabel | string | optional | Reporting label copied into output rows. |
creativeFormats | array | all | Leave empty for all, or choose text, image, video. |
platforms | array | all | Leave empty for all, or choose youtube, search, display, shopping, maps, play. |
maxCreativesPerTarget | integer | 30 | Max creatives emitted per target across pages (up to 1000). |
maxPagesPerTarget | integer | 5 | Max SearchCreatives pages per target (~40 creatives/page). |
includeCreativeDetails | boolean | true | Fetch and merge GetCreativeById detail payloads. |
includeVariantContent | boolean | true | Fetch and parse variant/preview content when available. |
includeRawJson | boolean | false | Preserve raw search/creative/advertiser RPC fragments on each item. |
strictErrors | boolean | false | Fail the run on enrichment errors instead of continuing with warnings. |
proxyConfiguration | object | Apify Proxy | Prefer residential proxy routed to the same market as region. |
session | object | optional | Optional cookies, headers, or user agent for live requests. |
rpcPaths / rpcIds | object | optional | Optional RPC path overrides (rpcIds is an alias). |
debug | boolean | false | Extra debug logging and optional DEBUG_ARTIFACTS. |
keepDebugArtifacts | boolean | false | Keep debug artifacts in the key-value store. |
Output and RUN_SUMMARY
Dataset rows are creative-level records ready for export or automation.
The Actor also writes RUN_SUMMARY with:
- items written and targets processed
- region, formats, platforms
- pages fetched and warning counts
- proxy selection metadata
- pay-per-event charge status (
result-item)
Pricing
This Actor uses pay per event pricing.
- Event:
result-item - Charge: $0.001 per final dataset item successfully written
- You are charged once per emitted creative row
- Platform usage (compute/proxy/storage) is billed according to your Apify account and Actor publication settings
Start with a small maxCreativesPerTarget to estimate cost before larger pulls.
Proxy recommendations
For live runs, use Apify Proxy with residential IPs and match apifyProxyCountry to the market you care about:
{"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"],"apifyProxyCountry": "US"}}
Standby / Live View endpoints
This Actor supports Standby mode with:
GET /andGET /healthGET /input-exampleGET /openapi.jsonPOST /searchPOST /run
Use runMode: "fixture" only for deterministic low-cost validation. For live data, keep runMode: "real" and bound volume with maxCreativesPerTarget.
Data source and limits
Data source:
https://adstransparency.google.com
Important limits:
- Google can change Transparency Center endpoints, payloads, or anti-bot behavior.
- Region filters depend on Transparency Center geo collection IDs; some markets may return sparse or empty results.
- Platform/format filters narrow results, but Google-side availability still controls what is returned.
- Pagination helps collect more creatives, but large advertisers can exceed practical page budgets.
- Variant parsing is best-effort and depends on preview/detail payloads.
- This Actor does not return private Google Ads account data, spend, conversions, or targeting settings.
FAQ
Does this scrape all countries?
Yes for Transparency Center coverage used by this Actor: choose anywhere or any of the 237 mapped country/territory codes.
Can I filter by ad format and platform?
Yes. Use creativeFormats for text / image / video, and platforms for youtube / search / display / shopping / maps / play. Leave either filter empty to include all.
Is fixture mode required?
No. Default runMode is real. Use fixture only for schema/smoke validation.
How am I charged?
One result-item event per final dataset item written, at $0.001 per item.
Developer usage
Apify API
curl "https://api.apify.com/v2/acts/lentic_clockss~google-ads-transparency-center-vn/runs?token=YOUR_TOKEN" \-X POST \-H "Content-Type: application/json" \-d '{"runMode": "real","region": "US","targets": [{"searchMode": "domain", "searchValue": "nike.com"}],"creativeFormats": ["text", "image", "video"],"platforms": ["youtube", "search", "display"],"maxCreativesPerTarget": 10,"maxPagesPerTarget": 2}'
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("lentic_clockss/google-ads-transparency-center-vn").call(run_input={"runMode": "real","region": "anywhere","targets": [{"searchMode": "domain", "searchValue": "nike.com", "targetLabel": "Nike"}],"creativeFormats": ["video"],"platforms": ["youtube"],"maxCreativesPerTarget": 10,})items = list(client.dataset(run["defaultDatasetId"]).iterate_items())print(items[:2])
MCP / AI assistants
Actor ID:
lentic_clockss/google-ads-transparency-center-vn
Summary
Use this Actor when you need a Google Ads Transparency Center scraper for domain or advertiser lookups, regional comparisons, format/platform filters, and structured creative-level exports for analytics, compliance review, and automation.
Related Actors
All 77 public Actors from [lentic_clockss]. Click a name to open the Store detail page.
Jobs & Freelance
- LinkedIn Jobs Scraper
- Bayt Jobs Scraper
- Fiverr Gigs Scraper
- Freelancer.com Scraper
- Glassdoor Scraper
- Himalayas Jobs Scraper
- Indeed Jobs Scraper
- Jobicy Remote Jobs Scraper
- RemoteOK Jobs Scraper
- SEEK Jobs Scraper
- Upwork Jobs Scraper
Real Estate
- Zillow & Zumper Scraper
- Realtor.com Scraper
- 99.co Scraper
- Realtor.com Agents Scraper
- Apartments.com Rental Scraper
- Bayut Scraper
- Craigslist Housing Scraper
- Daft.ie Scraper
- Dot Property Scraper
- FINN.no Scraper
- Funda Scraper
- Hepsiemlak Scraper
- Idealista Scraper
- Immobiliare.it Scraper
- ImmoScout24 Scraper
- Naver Land Scraper
- OpenSooq Scraper
- Otodom Scraper
- Property Finder Scraper
- PropertyGuru Scraper
- realestate.com.au Scraper
- Realtor.ca Scraper
- Rightmove Scraper
- SeLoger Scraper
- SUUMO Scraper
- Zillow Group Scraper
E-commerce
- Shopee Search Scraper
- E-commerce Scraper
- 1688 Global Product Search Scraper
- Allegro Scraper
- Amazon Search Scraper
- ASOS Product Scraper
- Cdiscount Product Scraper
- Costco Product Scraper
- Coupang Product Scraper
- Etsy Scraper
- Lazada Scraper
- MercadoLibre Scraper
- Mercari Japan Scraper
- Rakuten Japan Scraper
- SHEIN Product Scraper
- Target Product Scraper
- Temu Product Scraper
- Walmart Product Scraper
Travel & Stays
- Booking.com & Airbnb Scraper
- Agoda Scraper
- Airbnb Listings Scraper
- Booking.com Hotels Scraper
- Despegar Scraper
- Expedia Scraper
- Traveloka Scraper
- Travelstart Flights Scraper
- Trip.com Scraper
- TripAdvisor Scraper
Social & Content
Ads Intelligence
Local & Maps
General Tools
→ Browse the full profile: apify.com/lentic_clockss