Everything in one platform

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.

Extraction

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
Predicates

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
Visual

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
Delivery

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
REST API

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
Fetch strategy

Three-layer fetching, picked automatically.

Verid escalates through three fetch strategies until extraction succeeds. No configuration needed.

1

Native HTTP

Fast, lightweight. Works for most APIs, JSON feeds, and simple HTML pages. No overhead.

2

Headless browser

Renders JavaScript-heavy SPAs and bypasses basic bot detection with a stealth-enabled headless browser.

3

Residential proxy

Residential proxy network paired with a stealth browser for sites with aggressive anti-bot measures.

Templates

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.

GitHub new releasenpm new versionPyPI new versionCoinGecko crypto priceYahoo stock priceShopify product priceAWS status pageHacker News front pageSitemap new URLRSS new itemJob listings (CSS)Generic CSS / XPath / JSON / LLM
What to watch

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.

5 monitors, the full extraction loop, signed webhooks no credit card, no time limit.