In your logs

What our scanner is doing on your site, and how to stop it.

If you found LetAgentsIn/1.0 (+https://letagentsin.com/bot) in your access log, that is us. Somebody asked whether an AI agent could find, register with and use your product, and we answered it by fetching your public pages. Every request under that name carries From: hello@letagentsin.com, which is where to write if you would rather we did not.

Most of the scan is not sent under that name. Once the door test has asked as us, the rest of the pages are fetched with an ordinary browser user-agent and carry nothing identifying, for the same reason the named-agent probes below carry nothing: an edge that recognised us could wave us through, and the number we publish would then describe our own allowlist rather than your site. So your log will show a handful of requests as LetAgentsIn/1.0 (+https://letagentsin.com/bot) and the rest looking like a browser, from the same address, inside the same minute.

What it does, and what it never does

It reads text over HTTP and nothing else. It executes no JavaScript, downloads nothing, submits no forms, creates no accounts and follows no link that would change something on your side. It asks for the pages an agent would ask for: your home page, your documentation, your pricing page, and a fixed list of well-known addresses such as /llms.txt, /openapi.json and /.well-known/mcp.json.

It also asks a few pages as Claude-User, ChatGPT-User and the other retrieval agents, because whether your edge treats those differently from a browser is the measurement. Those requests deliberately carry nothing of ours: if we identified ourselves there, you could wave us through while everybody else stays blocked, and the number we publish would describe our own allowlist rather than your site.

How much of it there is

At once
6
requests to one site, never more
Per scan
27s
the whole scan, then it stops
Per response
400 kB
read, then the connection closes

A 429 is treated as our fault, not yours: we wait, ask once more, and if you refuse again the row says we could not measure it rather than reporting an absence on your site. The same goes for a page we could not read: it is published as unmeasured and counts against nothing.

Turning it off

We respect robots.txt. Add these two lines and our automated passes stop fetching your domain from the next run, which is within a day.

User-agent: LetAgentsIn
Disallow: /

Your existing entry is not deleted. It keeps its last measurement and the date it was taken, and we stop refreshing it. Deleting entries on request would quietly bias the corpus we publish: the vendors with the worst results have the strongest reason to ask, and a median of whoever did not object is not a median.

While it is frozen, the page says so: it prints the date the request first appeared, the date of the measurement it is still showing, and the date we last confirmed the request is still there. Removing the two lines unfreezes it, because the next automated pass measures the domain again and takes the notice with it.

A scan you run from our home page always runs, robots.txt or not, because you asked for it. It will not update the published entry: nothing a visitor scans joins the corpus we publish, and that rule is what stops an anonymous request rewriting what this site says about a company. A company we do not publish has no entry to rewrite, and its page shows nothing a visitor ran: only a scan we ran ourselves, and only while it still stands on the formula we run today. Otherwise it says we have not measured them, and either way it is kept out of search. If you have fixed something and want the entry refreshed sooner than the next pass, write to hello@letagentsin.com. The distinction between a crawler and a fetch a person triggered is the same one Google draws.

A site-wide User-agent: * with Disallow: / is read as a measurement rather than as an opt-out. It is what an AI agent looking for you hits as well, so it is recorded as being closed to automated retrieval, which is a finding about your site and not a request about us.

If you would rather argue with the numbers

Every check is one HTTP request with a fixed rule, and both are published. Nothing here is a model's opinion of your site.

The whole formula · every result we publish, as data