Pricing-change feed, weekly capture
Pricing changes
Every real anchor-price change we detect across 37 marketing and sales SaaS tools, captured weekly by the Playwright scraper. Newest first. Confidence-aware: only high-confidence scrapes can write here, so the feed never reflects a flaky scrape misreading a promo banner as a price decrease.
- Events captured
- 0
- Tools affected
- 0 / 37
- First seen
- ·
- Last seen
- ·
Volume by month
Captured pricing-change events over the trailing 12 months. Each bar is one calendar month. Y-axis scales to the busiest month in view; reads zero across the board until the cron starts detecting real changes.
No changes captured yet
The weekly Sunday 13:00 UTC cron scrapes every tracked tool and writes an event here only when a real, high-confidence anchor- price change is detected. The feed is empty today because no prices have changed since the cron started capturing baselines. Bookmark the URL; it populates as the spine ages.
Until then, the freshest signal is each tool's last-verified timestamp on /freshness, the machine-readable feed at /api/changes.json, or the RSS feed at /changes.xml.
How events get here
- Capture. Every Sunday 13:00 UTC, the GitHub Actions cron runs Playwright scrapers against each tool's pricing page. Each scrape is confidence-scored.
- Detection.
The merge layer compares the scraped anchor monthly price to the
prior verified anchor. A real change writes a single event line
to
data/pricing-history/<slug>.jsonl. Low-confidence scrapes never write here; they preserve prior data and flag the tool stale on /freshness. - Direction. Events are tagged increase, decrease, added (new plan), removed, to-custom (was numeric, now contact-sales), or from-custom (was contact-sales, now numeric).
- Append-only. The JSONL files are append-only. Past events are never rewritten retroactively, even when we improve the scraper. The feed is the actual record of what we saw, when we saw it.
- Public. The full feed is also at /api/changes.json (CC BY 4.0) and /changes.xml (RSS). Cite freely with attribution.
Each event links to the affected tool's profile page, where the current pricing and the source vendor URL are cited. For the most recent change per individual tool, see the "Most recent price change" section on each /tools/[slug] page.
Cron status and per-run details: /scrape-runs. Tool freshness backlog: /freshness. Operational ops: /status.