How to Connect Cloudflare Crawler Logs to Promptwatch
How we connect Cloudflare crawler logs to Promptwatch with Logpush on Enterprise or a Worker on any plan, then read training versus search fetches.
If ChatGPTBot never fetched the page, we do not rewrite the H1. We connect Cloudflare to Promptwatch Agent Analytics and we read the log. This is the same order as how to get cited by ChatGPT: crawlers first.
Two install paths. Cloudflare Enterprise can use Logpush. Any plan can use the Worker. The Worker uses a one-time token that Promptwatch does not store. We do not leave that token in a wiki.
DNS has to be orange-clouded. If the hostname bypasses Cloudflare, there is no log to ship. We check that before we file a ticket with their IT. Confirm the hostname is orange-clouded. If it is not, stop.
The site can be on Cloudflare and still fail this. If the apex is grey-clouded, it will not work for that hostname. Orange-cloud the host you care about, or we connect a different CDN integration if they actually terminate TLS elsewhere. We will not pretend a bypassed record is sending logs.
Logpush or Worker
Logpush is the Enterprise path. If they already pay for Logpush elsewhere, we reuse the habit. Worker is what we use on Pro and Free zones when Enterprise is not on the table. Same destination: Promptwatch crawler logs. We do not invent a third method.
Does the Worker store Cloudflare credentials? No. The Worker path uses a one-time token that is not stored. If their security team wants the Logpush path instead, that is an Enterprise conversation on the Cloudflare side. Enterprise: Logpush into Promptwatch. Any other plan: deploy the Worker with the one-time token.
After logs flow, we care about three kinds of hits, because they are not the same ticket. Training crawls (GPTBot and friends eating the corpus). OAI-SearchBot and other search-time bots. Citation fetches, when a model retrieves a URL to support an answer.
A block on training is a robots/CDN conversation. A miss on citation fetch after a successful read is a content or authority conversation. Mixing them is how we invoice the wrong team. Wait until ChatGPTBot, ClaudeBot, PerplexityBot, or GoogleOther show up. Filter to the URLs in the SOW. Split training vs OAI-SearchBot vs citation fetch before you file a content ticket.
Page inventory from sitemaps and GSC URL import sits next to these rows. We want the URL list and the fetch list in one project. Put sitemaps or GSC URLs in inventory so the log has a page list to sit next to. See import sitemaps and Search Console URLs.
What we still need from Cloudflare
Orange cloud on the hostname we claim to measure. A Worker or Logpush that actually runs. Bots allowed in robots.txt when the SOW says they should be allowed. Promptwatch will show the 403. It will not fix the WAF rule.
We keep GA4. Crawler logs are not visitors. Visitor analytics is a different tag.
Professional includes 25M crawler logs at $245/mo. Kick-off includes 10M at $199/mo (unlimited projects and prompts, 10 seats). Business is $579/mo and 100M logs. Essential at $95/mo is the first brand program; we do not promise Enterprise-scale log volume on it. Explore is free ChatGPT prompts only. G2: 4.7/5.
No instant alerts on errors. We read the log on the same cadence as the rest of the work.
FAQ
Does the Worker store Cloudflare credentials?
No. The Worker path uses a one-time token that Promptwatch does not store. If their security team wants the Logpush path instead, that is an Enterprise conversation on the Cloudflare side.
What if the hostname is grey-clouded?
It will not work for that hostname. Orange-cloud the host you care about, or we connect a different CDN integration if they actually terminate TLS elsewhere.
Is Logpush required?
Only on Cloudflare Enterprise. Any other plan deploys the Worker with the one-time token. Same destination: Promptwatch crawler logs.
If you want us to wire it, hello@1001seomedia.com. Send the zone name and whether the plan is Enterprise.