Initial release. Pay-per-event Google Ads Transparency Center scraper.
- Scrape ads by brand name, advertiser ID (
AR…), domain, or Transparency Center URL — mixed freely in one run.
- HTTP-only via the Transparency Center internal RPC API (
SearchSuggestions, SearchCreatives, GetCreativeById) — no browser, no login. got-scraping over HTTP/1.1 with a desktop-Chrome fingerprint; per-attempt proxy rotation with backoff.
- Server-side region filter (237 countries) and client-side format filter (
text / image / video) for complete historical coverage.
advertiserMatch strategy (top / verified / exact / all) + maxAdvertisersPerQuery to tame ambiguous names; resolved candidates written to the RESOLVED_ADVERTISERS key-value store record for auditing and pinning.
- Content-first format classification (image / video / text / html5) that is robust to Google's asset-shape codes; never-throw positional parser with shape canaries against schema drift.
- Optional Scrape ad details: per-region impression ranges, first/last-shown dates, Google surfaces (Search / YouTube / Display / Shopping / Maps / Play), and every creative variant. Charged only on a successful, non-empty lookup.
- Run-level dedup by
advertiserId|creativeId, migration-safe crawl state (Actor.useState), per-advertiser and total caps, optional customMapFunction, and error-row sidecar in the key-value store.
- PPE pricing:
actor_start $0.01 + ad_scraped $0.002 ($2.00/1,000) + ad_detail_enriched $0.001 (detail mode only; an enriched ad totals $3.00/1,000).