Use Cloudflare Workers to intercept requests at the edge and forward server logs containing AI bot & agent visit data to Siteline. The worker runs outside your application’s request path, so there’s no impact on site performance and no Cloudflare data is modified in any way.Documentation Index
Fetch the complete documentation index at: https://docs.siteline.ai/llms.txt
Use this file to discover all available pages before exploring further.
On a hosted website builder like Webflow, Framer, or HubSpot? See Website Builders for the full DNS-and-Worker setup.
Prerequisites
- A Siteline website key
- A Cloudflare account with your domain configured
- Node.js installed locally
Setup
Both Cloudflare’s DNS proxy and Workers run on Cloudflare’s free tier (100K Worker requests/day), which covers most sites.If you have higher traffic and wish to stay on the free tier you can scope your Worker routes to only the subdomains or paths that matter (e.g. your marketing site and blog, not your app dashboard). See Cloudflare Workers pricing for details.
Log in to Cloudflare via Wrangler (official CLI tool)
- Trigger the login page
- Allow Wrangler (Cloudflare’s official command-line tool) to access your account
Set your website key
- Create an encrypted secret for your Siteline website key
- Paste your key when prompted and press Enter
- Enter
Ywhen prompted if you want to create a new Worker with namesiteline-cloudflare-worker
Configure routes
- In the Cloudflare Dashboard, navigate to Compute & AI > Workers & Pages
- Select siteline-cloudflare-worker > Settings > Domain & Routes > Add > Route
-
Select your project as the Zone and enter a route for the domains you’d like to track:
example.com/*— tracks all pages for your domain*example.com/*— tracks all pages & subdomains
We recommend tracking all content pages. If your blog is configured as a subdomain, use*example.com/*to capture both subdomains and root pages. - Set Failure Mode to Fail Open
- Save
How it works
The worker runs as middleware on your domain:- Receives an incoming request
- Forwards the request immediately to your origin (zero added latency)
- Sends tracking data to Siteline in the background via
ctx.waitUntil - Returns the response to the visitor unmodified
Environment variables
Your Siteline website key. Set via
npx wrangler secret put SITELINE_WEBSITE_KEY.Troubleshooting
Worker not tracking visits
Worker not tracking visits
Verify that routes are configured in the Cloudflare Dashboard under Compute & AI > Workers & Pages. Select siteline-cloudflare-worker > Settings > Domain > Routes. You should see either
exampledomain.com/* or *exampledomain.com/* configured as routes.How do I check if my key is set?
How do I check if my key is set?
Run
npx wrangler secret list to confirm SITELINE_WEBSITE_KEY is present.How do I view real-time logs?
How do I view real-time logs?
Run
npx wrangler tail to stream logs from your deployed worker.How do I update my website key?
How do I update my website key?
Run
npx wrangler secret put SITELINE_WEBSITE_KEY and paste your new key when prompted.