Web change detection tools
for any URL, any way.
Six extraction methods. Smart diff predicates. Visual screenshot diffs. Multi-channel delivery. A full REST API. No infrastructure to manage.
Get the exact data you need
Six extraction methods
CSS selectors, XPath, JSONPath, regex, full-page hashing, and LLM-powered extraction. Each method is built for a specific kind of source - structured HTML, dynamic JSON APIs, or unstructured text.
Explore six extraction methods →Fire only when it actually matters
Smart change detection
Verid doesn't just ask "did anything change?" You define exactly when a change is worth a notification - percentage drops, absolute thresholds, regex matches, or complex AND/OR combinations.
Explore smart change detection →See changes the way your eyes do
Visual screenshot diff
A monitor type of its own: paste a URL, screenshot the page on every check, and compare it pixel by pixel. Scope the comparison to a region, ignore noisy elements, and alert only past your change threshold - no selectors needed.
Explore visual screenshot diff →Get notified wherever you work
Multi-channel delivery
Webhooks with HMAC-SHA256 signing (Stripe-compatible format), Slack, Discord, and email. Failed deliveries retry automatically up to 6 times with exponential backoff.
Explore multi-channel delivery →Integrate in minutes
Full REST API & SDK
Every action in the dashboard is available via REST API. OpenAPI 3.1 spec included. Official Node.js SDK published on npm. API keys with per-key scope control.
Explore full rest api & sdk →Three-layer fetching, picked automatically.
Verid escalates through three fetch strategies until extraction succeeds. No configuration needed.
Native HTTP
Fast, lightweight. Works for most APIs, JSON feeds, and simple HTML pages. No overhead.
Headless browser
Renders JavaScript-heavy SPAs and bypasses basic bot detection with a stealth-enabled headless browser.
Residential proxy
Residential proxy network paired with a stealth browser for sites with aggressive anti-bot measures.
Ready-made monitor configs.
Start in seconds with pre-built configs for the most common use cases - pick one in the dashboard and tweak the fields.
What people monitor with Verid.
Every row below is a monitor you can create today, most of them from a template that already carries the extractor and the predicate. Point it at your URL and change the rule.
Prices on product and pricing pages
The Shopify template reads price and availability straight out of the public product JSON that a store exposes and fires when either moves. When only a real move counts, gate it on a percentage instead: the stock template ships with a 3% drop rule.
Price monitoring API →Competitor pricing, changelogs and hiring
Watch a rival pricing page, changelog or job board on a schedule and diff only the fields you named. The Greenhouse template tracks the total job count on a board, which is the reliable signal that a role opened or closed.
Competitor monitoring API →Search result pages
Point a monitor at a search result URL, pull the positions and features you track out as named fields, and let the predicate decide which move is worth an alert instead of reading a rank report every morning.
SERP tracking API →Releases and package versions
GitHub releases, npm and PyPI each have a template, all three reading one version field out of the registry JSON. Because the field is the version, a reworded release page never fires. Only a new version does.
Change detection →Status pages and incidents
The AWS template regexes the newest incident title out of the Service Health feed and fires when it changes, checking hourly. Route it to a signed webhook, Slack, Discord, email, or several of them at once.
Notifications →Numbers inside JSON APIs
JSONPath reads a value out of an API response with no HTML in the loop. That is how the CoinGecko template watches a USD price for a 2% drop and how the Shopify one reads a price in minor currency units.
Extraction methods →Layout, imagery and redesigns
When the look is the signal and there is no stable selector to point at, a visual monitor screenshots the page every check and compares it pixel by pixel inside up to 20 regions you picked, alerting past your threshold.
Visual monitoring →Pages with no feed to subscribe to
The sitemap and RSS templates watch a URL count or the newest item title. When there is nothing structured to aim at, a full-page monitor hashes the normalized document with SHA-256, scripts, styles, comments and nonces stripped first.
Change detection API →Stock and availability
Extract an availability field and gate on it: field-equals fires the run it reaches the value you want, field-changes tells you about every flip. The Shopify template does the latter alongside price, in one composite OR rule.
All use cases →Feature questions
What people ask while deciding which part of Verid to use, answered with the numbers the product enforces.
Which of the six extraction methods should I use?
CSS selectors for ordinary HTML pages, XPath when the document needs more precise traversal, JSONPath when the source is a JSON API, regex for a pattern inside raw text or a feed, a full-page snapshot when nothing stable exists to point at, and an AI prompt in plain English when the content is unstructured. One monitor uses one method, and every method returns named fields that predicates can be written against.
What is a diff predicate?
The rule that decides whether a change deserves an alert. Verid ships nine: any field changes, a named field changes, a field increases by a percentage, a field increases by an absolute amount, a field decreases by a percentage, a field decreases by an absolute amount, a field matches a regular expression, a field equals a value, and a composite that joins any of the others with AND or OR. Without one, every trivial edit to the page would reach you.
Which limits change with the plan, and which features are removed?
One feature is plan-gated: the residential proxy fallback starts on Starter. Everything else is available on every plan and only the caps move. Monitors run 5, 25, 50, 250 and 1500 from Free to Scale. The fastest check interval runs 24 hours, 2 hours, 1 hour, 15 minutes and 5 minutes. Delivery endpoints per monitor run 1, 2, 3, 10 and 25. Visual monitors run 1, 3, 10, 75 and 500. AI extraction calls run 50, 250, 500, 5,000 and 25,000 per month.
Can one change reach more than one place at once?
Yes, up to the per-monitor delivery cap for your plan: 1 endpoint on Free, 2 on Lite, 3 on Starter, 10 on Pro and 25 on Scale. Each endpoint is a signed webhook, a Slack channel, a Discord channel or an email address, and each one is attempted and logged separately, with the response status and body kept against the delivery.
How do I check that a webhook really came from Verid?
Every signed delivery carries a Verid-Signature header in the form t=<unix timestamp>,v1=<hex digest>. The digest is HMAC-SHA256 over the timestamp, a dot, and the exact raw body, keyed with the signing secret for that monitor, which is the same scheme Stripe uses. Recompute it, compare in constant time, and reject anything whose timestamp is more than 5 minutes old. The docs carry the whole check as a copy-paste function in TypeScript, Python, Ruby, Go and PHP.
What happens when a site blocks the request?
The fetch escalates on its own. Layer one is a plain HTTP request. If that fails or returns nothing usable, layer two renders the page in a stealth-configured headless browser. Layer three sends that browser through a residential proxy, which needs Starter or above and can be switched off for the whole account in Settings. There is nothing to configure per monitor.
Can I do everything through the API instead of the dashboard?
Yes. Every dashboard action has a REST endpoint under /api/v1, described by an OpenAPI 3.1 spec, with an official Node.js SDK on npm as @verid.dev/sdk. Authentication is a bearer API key, each key carries read or write scope, and the request budget per minute is 30 on Free, 60 on Lite, 120 on Starter, 600 on Pro and 3,000 on Scale.
How long is monitor history kept?
Run history is pruned automatically at 14 days on Free, 90 on Lite, 180 on Starter, 365 on Pro and 730 on Scale. Visual monitors also carry a monthly screenshot budget of 200 MB on Free, 1 GB on Lite, 5 GB on Starter, 50 GB on Pro and 500 GB on Scale, and pruning deletes the stored screenshots and diffs with the runs they belong to.