Show HN: See when ChatGPT or Perplexity sends a visitor to your site A new free tool called AI Referral Notifier runs as a Cloudflare Worker to send push notifications when AI assistants like ChatGPT or Perplexity send a visitor to a site, or when AI crawlers fetch pages. The tool detects referrals and crawlers at the edge without slowing the site, making visible which AI engines drive traffic. Get a push notification the moment an AI assistant sends you a real visitor: a person who clicked through from a ChatGPT, Perplexity, Gemini, Claude, Copilot, or Grok answer. A visitor an AI actively pointed at you is rare and high-value, and this tells you the instant it happens. It can also alert on AI crawlers fetching your pages to train on them, index them, or answer a user live . That is the far higher-volume signal: a busy site sees thousands of crawler hits a day. One setting, ALERT ON , chooses which signals fire referrals , crawlers , or both ; it defaults to referrals because crawlers are so much noisier. Turn them on with ALERT ON=crawlers or both .It runs as a single Cloudflare Worker in front of your site, inspects each request at the edge, fires a notification to your phone, and passes the request straight through to your origin. No tracking script, no database, no change to your pages. Detection and notifications run off the response path, so your site is never slowed down. Most "AI bot" tools are about blocking . But the AI crawl is not the threat, it is the tell: it is the clearest early signal of who is reading you and why. The interesting question is not "how do I keep AI bots out," it is "which AI engines actually touch me, and which ones send me people." This tool makes that visible in real time, for free. | This tool free tells you | It cannot tell you | |---|---| | A human landed on your site from an AI assistant, and on which page | Whether the AI actually cited you in an answer | | An AI crawler hit your site, which vendor, and its purpose train / index / answer live | Which prompts you show up for, and which you are missing | | The visitor's country, real-time, at your edge | Whether the AI recommended a competitor instead of you | | Which signals to be alerted on referrals, crawlers, or both | Whether that visibility turned into signups or revenue | The right-hand column is the actual job of AI visibility, and it needs measurement across the assistants, not just your own logs. This tool is the free first look at what reaches your edge. You need a site that is already on Cloudflare its traffic is proxied by Cloudflare, the orange cloud in your DNS . First, pick a notification channel. The zero-account option is ntfy https://ntfy.sh : install the ntfy app on your phone, tap Subscribe to topic , and enter a long, hard-to-guess topic name treat it like a password, for example ai-alerts-9f3k2p-mysite . That topic name is all you need. Prefer Telegram, WhatsApp, Discord, or Pushover? See Notification channels notification-channels . Then get the Worker deployed one of three ways: - fork this repo and Cloudflare builds it straight from your fork. No terminal, no copy-paste. Deploy from GitHub option-a-deploy-from-github-no-terminal - copy one file into the Worker editor. No terminal. Paste into the dashboard option-b-paste-into-the-dashboard-no-terminal - Command line option-c-command-line-wrangler git + wrangler , the most reliable path for developers. After the first two, do the one-time Configure the Worker configure-the-worker-after-option-a-or-b step. Fork this repo, then let Cloudflare import your fork and deploy it. Forking is what makes this reliable: Cloudflare deploys straight from a repo you already own, so there is no create-repo step to fail, and every later change you make auto-deploys. Fork this repository to your own GitHub account the Fork button, top right of the repo page .- In the Cloudflare dashboard https://dash.cloudflare.com , open Workers & Pages and click Create application . - Click Continue with GitHub and authorize the Cloudflare GitHub app to access your fork when prompted. - Select your fork from the repository list and click Next . - Accept the defaults and click Deploy . Cloudflare reads wrangler.toml , so ALERT ON referrals and CRAWLER THROTTLE SECONDS are already filled in and the deploy command is npx wrangler deploy . You do not need to open Advanced settings - ignore the non-production-branch build command, the build token, and any "token is missing permissions" notice. None of it matters here. - Now do Configure the Worker configure-the-worker-after-option-a-or-b : this deploy runs, but it will not alert anyone until you add a notification channel and a route. Fallback: Clone a public repository via Git URL. On Ship something new you can instead click Clone a public repository via Git URL and paste https://github.com/surfacedby/ai-traffic-alerts-for-cloudflare.git . This asks Cloudflare to create a fresh copy of the repo in your account, which can return HTTP 400 at the Deploy step before any build runs if the Cloudflare GitHub App lacks permission to create a repo it is installed with "Only select repositories" or a repo of that name already exists. Forking first, as above, avoids this. Create the Worker. In the Cloudflare dashboard https://dash.cloudflare.com , go to Compute Workers - Workers & Pages - Create - Start with Hello World - Get started . Give it a name like ai-traffic-alerts and create it. Paste the code. Click Edit code the