The Page Looked Fine Until We Checked the Archive
It started with a support ticket
"Your pricing page says $29/month but I was charged $49." We pulled up the page — yep, $49. Always been $49. Customer must be confused.
Except they weren't.
We dug through git history. No changes to the pricing component in months. Checked the CMS — someone on the marketing team had updated the price in a content block two weeks ago. No PR, no review, no notification to engineering.
The real problem
We had no visual record of what the page looked like before the change. Git tracks code, not rendered output. The CMS had an edit log buried somewhere, but it didn't show you the actual page — just field values.
After that incident we started archiving screenshots of key pages on a schedule. Every 6 hours, automated captures of pricing, homepage, signup flow, terms of service. Takes maybe 2 minutes to set up and you forget about it until you actually need it.
What we learned
Three things, really.
First — content changes that bypass engineering are more common than you'd think. Marketing teams, support teams, anyone with CMS access can change what customers see without a single line of code changing.
Second — "it's always been like that" is never a safe assumption. People's memories are unreliable. Screenshots don't lie.
And third — you don't need fancy monitoring for this. Scheduled screenshots with some basic diffing catches 90% of unexpected changes. The remaining 10% is stuff like A/B tests and personalization, which you probably know about anyway.
The customer got a refund btw. And now we have receipts for everything.