All notable changes to this Actor are documented here. Format: Keep a Changelog , versioning: SemVer .
[0.1.2] - 2026-10-06
Run quality: fair charging, completeness and a rerun input.
Added
Every record has isComplete. An ad whose creative ID, advertiser (ID and name) or format could not be read is saved with isComplete: false and is not charged (ad and ended-ad).
The SUMMARY record has a completeness object (unit: "targets", requested, delivered, incomplete, failed, ratio) and an outcome per target.
FAILED_INPUT in the key-value store when targets failed or are incomplete: the original input with all settings, reduced to those targets.
Final status message: Done: 2 of 3 targets complete, 20 ad(s) saved. 1 failed: … Rerun input saved as FAILED_INPUT.
Changed
SUMMARY is now an object{ completeness, queries }. The per-query list that used to be the whole record is now queries.
monitor-check is charged after the scan of a query succeeds, no longer before each block. A scan that fails or is cut short by the cost limit is free.
actor-start is charged once the run delivers something (an ad, or a target Google answered). A run in which every target fails is free.
A search result with one unreadable creative (no ID) no longer stops the run: the creative is skipped and its target is marked incomplete. A page where nothing is readable is still treated as a layout change.
Notes
A domain or advertiser with no ads, and an advertiser name with no verified match, are real answers and count as complete. Google returns the same empty answer for a domain that does not exist.
No changePercent (spec section 3): this Actor has no numeric change field. Monitor changes are new, reactivated and ended.
[0.1.1] - 2026-09-29
First public release on Apify Store.
Changed
Pay-per-event prices set for all six tiers: ad $0.0012 → $0.0008; ad-details $0.002 → $0.0012; ended-ad $0.0005 → $0.0003 (FREE → GOLD and above); monitor-check $0.008 and actor-start $0.005 at every tier.
[0.1.0] - 2026-09-29
Added
Scrape mode: ads from the Google Ads Transparency Center by domain, advertiser name, advertiser ID or Transparency Center URL, with pagination, per-query limits and cross-query deduplication.
Filters: region (any country), platform (Search, YouTube, Shopping, Maps, Play), format (text, image, video) and date window (last ~12 months).
Monitor mode: per-query memory in a named key-value store; returns baseline, new, reactivated and ended ads; exactly-once delivery of changes across runs. Older live ads missed by an earlier scan (Google reorders results while paging) are absorbed silently instead of being reported as false changes.
Optional ad details: creative variations, per-country first/last shown dates, and EU impression ranges per country and platform.
Per-query SUMMARY record in the default key-value store.
Pay-per-event pricing (actor-start, ad, ad-details, monitor-check, ended-ad) that stops at the user's maximum cost per run. monitor-check is charged per monitored query and run for each started 1,000 live ads read, before reading them.
Output schema (dataset views and the SUMMARY record).
An input that names nothing (e.g. {}) runs a small example query (20 ads for nike.com) instead of failing.
Retries with exponential backoff and proxy-session rotation on rate limiting (HTTP 429), redirects to Google's block page and 5xx.
Migration-safe run state: no duplicate records or charges after a restart.