Guide

How to track SaaS pricing changes over time

A pricing history is only as good as its snapshots. This guide covers how to capture them, how to compare them, and how to avoid the common traps.

Published 2026-11-02

Snapshots, not memories

Every observation should be a snapshot: the URL, the timestamp and the content as it appeared. Screenshots help humans; structured fields make comparison possible.

Use a fixed schema

Store the same fields every time: plan, price text, amount, currency, interval and limits. A fixed schema is what turns a pile of screenshots into a history you can query.

At least two dated observations

A single snapshot tells you what a page says now. History needs at least two observations on different dates. Be explicit about the gap: a change between March and July could have happened any day in between.

Classify each change

  • Price: amount or currency changed on an existing plan
  • Plan: a plan was added, removed or renamed
  • Limit: a listed limit changed
  • Copy: wording changed without a structured difference

Web archives fill some gaps

Public web archives can show older versions of a pricing page, but coverage is irregular and dynamic pages are often captured incompletely. Treat archive data as indicative and note its source.

Pitfalls

  • Regional pricing: the page may show different currencies by location.
  • JavaScript-rendered prices may not appear in a plain fetch.
  • A/B tests can show different prices to different visitors.
  • Annual and monthly toggles can hide one of the prices.

Automating it

TierPing runs this process on a schedule for each page you add, stores structured snapshots with confidence scores and builds the history automatically from your first check onwards.

Frequently asked questions

Why use a fixed schema for snapshots?
Storing the same fields every time — plan, price text, amount, currency, interval and limits — is what makes snapshots comparable over time.
Can web archives fill gaps in a pricing history?
Sometimes, but coverage is irregular and dynamic pages are often captured incompletely. Treat archive data as indicative and note its source.
Why might two visitors see different prices?
Regional pricing, A/B tests and monthly/annual toggles can all change what a page shows.

Start on the free Starter pilot: 1 monitored page, 5 checks, 5 alert emails.

Start Free