Keep a Timestamped Log of Every Website Change
Some changes you want to act on; others you just need to remember. Point Rendex Watch at a page and let Zapier's native Website Changed trigger append a row to a Google Sheet every time it moves — the date, what changed, a diff score, and links to the before, after, and cropped images. No webhook, no code, no snapshot storage — just a change log that fills itself and never forgets.
Last updated 2026-07-23
The Problem
A one-off alert tells you a page changed today, then scrolls away — it can't tell you how a competitor's pricing drifted over a quarter, when a supplier last rewrote their terms, or how often a regulator updates a rule. Answering those questions means a permanent record, and building one by hand is exactly the chore nobody keeps up: screenshot the page, note the date, paste it into a spreadsheet, repeat forever. Rolling your own pipeline is worse — a scheduler, a headless browser, snapshot storage, and a diff step to maintain just to end up with rows in a sheet.
The Solution
Rendex Watch does the monitoring and Zapier turns each change into a row. Create a watch on the page, then build a Zap with the Rendex 'Website Changed' trigger — Zapier polls your watches natively and starts the Zap for each new change, no webhook to host. Because Rendex has already rendered and diffed the page, the trigger hands over a plain-English summary, a numeric diff score, the changed timestamp, and links to the before, after, and cropped images. Map those into a Google Sheets 'Create Spreadsheet Row' step and every change appends itself as one clean, timestamped line — a change log you can sort by date, filter by page, chart over time, or hand to an auditor.
How the Workflow Runs
Rendex Watch checks
Rendex re-renders your URL on a schedule and diffs it against the baseline in real Chrome. No cron, no snapshot storage, no diff library to run yourself.
Website Changed fires
The native Zapier trigger polls your watches and starts the Zap once per new change — carrying the summary, the diff score, the changed timestamp, and before/after/crop image URLs.
Append a row
A Google Sheets 'Create Spreadsheet Row' step writes one row per change — date, page, what changed, diff score, and the image links — growing a change log you can sort and filter.
Input → Rendered Output

Rendered by Rendex
What You Need
- A Rendex API key. Watch runs on Free (1 watch, a daily check); Starter and Pro add more watches and faster checks.
- The Rendex app connected in Zapier — search "Rendex" in the app directory and paste your key once.
- At least one Rendex Watch created on the page you care about (from the dashboard, the API, or the Create Website Watch action).
- A Google Sheet connected in Zapier with a header row — e.g. Date, Page, URL, What changed, Diff score, Crop, Before, After.
What This Recipe Uses
One row per change, forever
Every detected change appends a single timestamped row — the changed date, the page, and what moved — so the sheet grows into a complete history you can sort and filter.
A summary that reads like a log entry
The change arrives with a one-line plain-English summary ("Pro plan rose from $19 to $24/mo"), so the row is meaningful at a glance without opening the page.
Evidence one click from the row
Map the crop, before, and after image URLs into their own columns — every log entry links straight to a picture of exactly what changed and what it looked like before.
Native polling, zero infrastructure
The Website Changed trigger is native to Zapier — no webhook to host, no signature to verify. Rendex owns the schedule, the real-Chrome render, the storage, and the diff.
Build It
# Zapier — no code
Trigger: Rendex — Website Changed
(fires per change on the watches connected to your key)
Action: Google Sheets — Create Spreadsheet Row
Spreadsheet: Website change log
Worksheet: Changes
Row:
Date: {{ Rendex: Changed At }}
Page: {{ Rendex: Name }}
URL: {{ Rendex: Url }}
What changed:{{ Rendex: Ai Summary }}
Diff score: {{ Rendex: Diff Score }}
Crop: {{ Rendex: Crop Url }}
Before: {{ Rendex: Before Url }}
After: {{ Rendex: After Url }}
# No Ai Summary on a run? Fall back to {{ Rendex: Text Diff }} for the summary column.# Create a watch on the page you want to log. After this, the Zapier
# "Website Changed" trigger polls it automatically — no webhook needed.
# diffMode "both" flags a change to how the page LOOKS or its text; threshold
# is the 0..1 noise floor the visual diff must EXCEED to count as a change.
curl -X POST https://api.rendex.dev/v1/watches \
-H "Authorization: Bearer rdx_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://competitor.example.com/pricing",
"name": "Competitor pricing",
"intervalMinutes": 1440,
"diffMode": "both",
"threshold": 0.02
}'
# => { "success": true, "data": { "id": "<uuid>", "lastStatus": "queued", ... } }
#
# intervalMinutes floor by plan: Free 1440 (daily), Basic 180, Starter 60, Pro 30.
# Create it here, from the dashboard, or with the "Create Website Watch" action.100 free API calls/month — no credit card required. Get your API key and start building.
Use this when the value is in the history, not the heads-up. A Slack ping is perfect for 'something moved right now,' and a Jira ticket is right when a change is work — but neither answers 'what has this page done over time?' A spreadsheet does: every change becomes a row you can sort by date, filter to one page, pivot into a chart, or export for a compliance review. Because the Website Changed trigger arrives pre-enriched, the row is genuinely useful on creation — the plain-English summary reads as a log entry, the diff score lets you sort the big moves from the noise, and the crop and before/after links mean the evidence sits one click from the row. It's native Zapier polling, so there's no endpoint to stand up and no signature to verify; and because it's just a Create-Row action, the same change can fan out to a sheet, a Slack heads-up, and a ticket at once. Watch runs on the free tier, and each check costs one credit from your render pool.