seed ▸ competitor watch opened0

See every competitor move first.

Watch rivals' prices, pages, and catalogs. The instant one changes, Writ alerts you - and hands your systems the diff.

Writ runs on your own accounts, with your own credentials and data, on sites you are authorized to use.
Pricing page - visual diff◍ scan
–Was · $99/mo - Pro
●Now · $79/mo - Pro · detected 6s ago

Screenshot-region baselines flag visual changes a text extraction would miss.

✓ selector or visual baseline✓ every change is a REST payload✓ fires an Automation trigger
obs ▸ intel goes stale1
01
The problem

Competitive intel goes stale by Friday.

Competitive intelligence is usually a someone-checks-it-on-Friday process. By the time you notice a price cut, a new feature page, or a hiring spree, the signal is days old - and it lives in one person's head, not your stack.

  • Manual checks don't scale across every competitor page.
  • Changes hide in dynamic pages a daily data pull misses.
  • The intel lives in someone's head, not your systems.
act ▸ baseline · detect · route3
02
How Writ works

Baseline it, detect the change, route the signal.

Baseline anythingSelector, visual-zone, or screenshot-region baselines catch text, layout, and image changes - even behind a login.
Detect fastChecks as often as every 10 seconds on Scale; the change itself is the trigger - no polling on your side.
Route the signalNotify Slack, email, or a webhook, log it to the Data explorer, or fire a workflow that captures the new value.
scope ▸ pages that signal6
03
What teams track

Watch any page that signals a move.

If a page tells you what a rival is about to do, put a Monitor on it. Writ baselines the region you care about and only fires when it actually changes.

Pricing pagesPlan & feature pagesChangelogsStatus pagesCareers & hiringProduct launchesLanding-page copyApp-store listings
spd ▸ cadence ladder10
04
Honest cadence

How fast you find out depends on your plan.

Faster checks are a paid capability, and dynamic JS-rendered pages run slower than static HTML. Here is the real ladder - no asterisks.

PlanStatic / HTMLDynamic (JS)
Freeevery 5 minevery 15 min
Starterevery 60severy 10 min
Proevery 60severy 10 min
Growthevery 30severy 5 min
Scaleevery 10severy 2 min
Enterpriseas fast as 10scustom

Detection latency is the check interval - a change surfaces on the next check, then fans out in seconds.

api ▸ diff called24
05
The change is the payload

Every diff is a REST endpoint.

A detected change isn't just an alert - it's structured data your stack can pull. Read the latest change over REST, or let it trigger an Automation.

# Monitor: competitor pricing page, screenshot-region baseline
# On change → readable over REST and fires an Automation trigger

GET https://api.usewrit.app/v1/competitor-watch/latest
Authorization: Bearer wt_…
→ {
  "url": "https://rival.example/pricing",
  "region": "plan-card",
  "changed_at": "2026-07-02T08:14:03Z",
  "summary": "Pro plan price changed 99 → 79"
}

Read it over REST, wire it into an Automation, or expose the workflow as an MCP tool.

fire ▸ signal → system42
06
From signal to system

Every change becomes an action.

Fan it out to your channels, store it in the Data explorer, or run a follow-up workflow - for example, extract the new price and write it to your pricing sheet.

01Change detectedEvery detected change is an Automation trigger - no glue code.
02Fan outNotify Slack, email, or a webhook and store it in the Data explorer.
03Follow-up workflowExtract the new price and write it to your pricing sheet.

Wire the trigger in Automations.

Or sweep the whole set every morning.

Real-time detection is one mode; a scheduled sweep is the other. Put your competitor Monitors on a recurring interval - every few minutes, hourly, or once a day - and a single morning run collects a fresh snapshot of every tracked page and delivers a daily competitive report to your team. No one has to remember to check. Recurring runs are interval-based, from minutes to daily - set the cadence in Automations.

Every few minutesCatch fast moves on the pages that matter most.
HourlyA steady sweep across your whole competitor set.
Daily - every morningA scheduled run plus a daily competitive report.
faq ▸ answered60
07
FAQ

Competitor monitoring questions.

Do I need access to the competitor site?

Writ runs on your own accounts, with your own credentials and data, on sites you are authorized to use. You watch pages you are authorized to view.

Text or visual changes?

Both - selector and text baselines catch content changes; screenshot-region baselines catch visual and layout changes a text extraction would miss.

How fast will I find out?

It depends on your plan and whether the page is static or JS-rendered - from every 5 minutes on Free down to every 10 seconds on Scale and Enterprise. Once a change is detected, notifications fan out in seconds.

How is this different from price monitoring?

Price monitoring is one slice; here you baseline any page region - pricing, features, changelog, careers - and fire on any change.

go ▸ watch started∞

Never be the last to know.

Set Monitors on the competitor pages that matter and get alerted the moment they change.