Yesterday, I was trying to detect agents among website visitors
I wanted to find out which AI agents like Claude, ChatGPT, and Perplexity were visiting my blog at dominikgronkiewicz.com, and ideally capture the email of the human who sent the agent. My goal was to follow up directly with the agent owners, instead of being just another site quietly scraped by bots. To do this, I built a two-layer system: First, I added passive tracking by injecting a 1×1 tracking pixel on every page. This pixel hits a new Gatsby Function that checks the User-Agent and logs visits from known AI bots to Google Analytics. It was a lightweight solution: no new infrastructure, just a simple backend function and a hidden image tag in my layout. Second, I set up active lead capture. I updated the llms.txt file and created a new /agents page, both instructing agents to POST their owner's email to my existing /api/send-email endpoint. I reused my current mailer setup, so no new dependencies or database were needed. The /agents page also includes a curl example and a simple form for agent check-ins. The result was not what I expected. The agents ignored llms.txt, none visited the landing page designed for them, none sent an API request, and they were not even detected from the User-Agent. This showed that most AI agents either do not follow these kinds of instructions or use methods that bypass both passive and active tracking. As an experiment, I asked Claude Code to visit the website using both the CLI and the Chrome plugin. The CLI visit was not detected as some anonymous tool "(direct)/(none)". The Chrome plugin was detected, but only as a regular human visitor, not as an AI agent. This confirmed that most agentic tools either do not identify themselves or appear as standard browsers, making reliable tracking impossible.