Open source · runs on Cloudflare’s free tier

Broken links, found and fixed before visitors give up.

One script tag catches every 404 your visitors hit. A crawler finds the ones nobody clicked yet. Each one comes with a suggested fix and the redirect rule to ship it.

Your own Worker and D1 database. No account with us, no usage fees at hobby scale.

docs.acme.dev /docs/getting-startd
  1. Caught
    12 visitors · from news.ycombinator.com · 2m ago
  2. Suggested /docs/getting-started
    Closest known page · shown to visitors meanwhile
  3. Fixed
    /docs/getting-startd  /docs/getting-started  301
    One line in _redirects, or your agent opens the PR

How it works

Install in a minute. Then it mostly runs itself.

<script src="https://404less.com/embed.js"
        data-site="k8f2a9c1e4" defer></script>
1

Add one script tag to your 404 page

It reports each hit with its referrer, and shows the visitor the closest matching pages so they don’t bounce. Embed options →

The broken links list with two rows selected and a bulk Resolve action
2

Everything lands in one list

Visitor 404s and crawler findings together, ranked by hits. Resolve what you fixed, ignore what’s noise. If it breaks again, it reopens on its own.

A broken link’s detail page with ranked suggested fixes and a Vercel redirect rule
3

Fix it with a redirect rule

Pick a suggested target and copy the rule for your platform: _redirects, Vercel, Next.js, Nginx or Apache. Or let your agent do it.

Built for the job, not a suite.

Six things, done properly. No uptime checks, no keyword rankings, no bloat.

Realtime 404 tracking

Every hit, with the referrer that sent it there and a 30-day trend. Fragments stripped, exclusions honored, rate-limited per site.

Scheduled crawler

Fetches your pages, checks every link and asset, records redirect chains, respects robots.txt, and re-verifies open links so fixes resolve themselves.

Suggested fixes

Ranks your known pages by path similarity, so /docs/instalation points at /docs/installation before anyone has to think.

Redirect rules, ready to paste

One click gives you the exact rule for _redirects, Vercel, Next.js, Nginx or Apache. The fix is a commit, not a ticket.

Digests, not noise

Slack, email or Pushover. One grouped digest per window per site, from five minutes to daily. Ignored links never alert.

MCP for your agent

Read-only tools over streamable HTTP. Claude Code or Cursor can list what’s broken and open the fix PR. 404less never writes to your repo.

Your visitors see this instead of a dead end.

The snippet detects a 404 page, reports the hit, and asks 404less for the closest known pages. The card takes your accent color and renders inline or as a quiet toast.

  • Isolated in a shadow root, so it never fights your CSS
  • No cookies, no tracking on pages that aren’t a 404
  • Light and dark, reduced-motion aware, dismissible, keyboard accessible
Embed options
404
Page not found
We couldn’t find that page on docs.acme.dev.
The 404less suggestion card: “Looking for something?” with three matching pages

Or hand it to your agent.

Point Claude Code, Cursor or any MCP client at your instance. The tools are read-only by design: your agent gets the list, the referrers and the suggested targets, and opens the pull request in your repo.

  • list_sites · list_broken_links · get_link_details · get_suggestions
  • Streamable HTTP, bearer API key, scoped to your team’s sites
Agent setup
$ claude mcp add --transport http 404less \
    https://404less.com/mcp \
    --header "Authorization: Bearer 404l_…"
✓ Added 404less · 4 tools

› Which broken links on docs.acme.dev matter most?
  Draft the redirects.
  Top 3 by hits: /docs/getting-startd (40),
  /docs/instalation (23), /blog/launch-post (15)
  Drafted 3 redirects in vercel.json
✓ Opened PR #142 · fix: redirect 3 broken docs URLs

Self-host in one click. Pay nothing at hobby scale.

The whole thing is one Cloudflare Worker with D1, Durable Objects and cron triggers, all on the Workers Free plan. The deploy button provisions everything in your account.

  • Your data stays in your account; 90-day retention by default
  • Magic-link sign-in; email via Resend when you want it, dev mode when you don’t
  • MIT licensed. Fork it, change it, keep it.
Deploy to CloudflareDeploy guide
Resource Free plan 404less at hobby scale
Worker requests 100k / day Hits, dashboard, crawler: thousands
D1 writes 100k / day Bounded by per-site rate limit + retention
Outbound requests 50 per invocation Crawler: 40 per minute-tick, resumed next tick
Durable Objects 100k req / day Digest windows and rate limiters
Cron triggers 5 per account Crawl tick + nightly retention

Questions

Is it really free?
The software is MIT licensed and designed to fit the Cloudflare Workers Free plan at hobby scale: a few sites, thousands of hits a day. Cloudflare bills you directly if you outgrow the free tier; 404less has no fees of its own.
What does the snippet collect?
Only on a page it detects as a 404: the URL, the referrer, and the user agent. It sets no cookies and does nothing on pages that aren’t a 404. Hits are rate-limited per site and pruned after 90 days by default.
Will it slow my site down?
The script is about 14 KB, loads deferred, and only acts on 404 pages. The hit is sent with sendBeacon, so it never blocks navigation.
How is this different from Ahrefs or Oh Dear?
Those are broad suites that include a crawl. 404less does one job end to end: it sees the 404s visitors actually hit, finds the rest with a crawler, suggests the fix, hands you the redirect rule, and keeps the list clean with resolve/ignore and automatic reopening. And you host it yourself.
Can I monitor several sites?
Yes. Sites belong to a team; each has its own key, filters, crawl schedule and alert settings. The default cap is five sites per team to protect free-tier limits, and it’s a one-line setting to raise.

Stop losing visitors to pages that moved.

Deploy your own 404less in a few minutes, or read the source first.