Description
ChatGPT, Perplexity and Claude already send people to your store. Analytics platforms are catching up: Google Analytics 4 now has an AI Assistant channel covering ChatGPT, Gemini, DeepSeek, Copilot and Grok. That closes part of the gap, and it is worth saying so plainly.
It does not close the part that matters most. Roughly seven in ten AI referrals arrive with no referrer at all, and a channel report has nothing to classify them by. Perplexity and Claude are not in Google’s list. And a session in an analytics product is not an order in your database.
This plugin measures the channel from your own server, and joins it to WooCommerce orders.
It counts. Every AI visit and every order it leads to, attributed with first-party data. No third-party script and no pixel on your storefront.
It shows its work. Next to every number you see how it was identified: a referrer, a campaign tag, or an assistant that fetched the same page moments earlier. Estimates are labelled as estimates and reported separately from proven revenue. A dashboard that cannot tell you why it believes something is a dashboard you cannot defend.
It makes your store readable to machines. An llms.txt and llms-full.txt map of your catalogue and policies, generated from your live products and kept in sync as they change.
It logs the bots. Which crawlers read your store, how often, for what purpose, and whether they are who they say they are. A request claiming to be GPTBot from an address outside OpenAI’s published ranges is shown as what it is: someone pretending. That check needs the address lists the vendors publish, so it works once you turn on crawler address verification on the Settings screen (see External services below).
Your data stays on your server
The plugin stores no IP addresses and no email addresses. Visitor sessions are keyed by a first-party cookie, set only for visits that actually came from an AI assistant. When a consent plugin that supports the WP Consent API is active, the cookie is set only after the visitor has agreed to anonymous statistics. WordPress privacy exporter and eraser hooks are supported.
Already running an MCP connector?
Good. This plugin works alongside it, not instead of it. A connector opens your store to agents; this one records what they did. The two answer different questions.
What it does not do
It does not survey language models about your brand, it does not generate content, and it does not run its own MCP server. It measures the channel; it does not pretend to be it.
External services
This plugin can make one kind of outbound request. It is off until you turn it on, and it is disclosed here in full.
Crawler address lists published by OpenAI and Perplexity.
What it is for. A user agent string costs nothing to forge. To tell a real GPTBot visit from a scraper wearing its name, the plugin compares the requesting address against the ranges each vendor publishes. Without this, every claimed crawler would have to be taken at its word, and the crawler log would be worth very little.
What is sent. Nothing. These are plain unauthenticated GET requests for public JSON files. No personal data, no store data, no site identifier and no licence key are transmitted. The plugin does not send your visitors’ addresses anywhere; it downloads the vendors’ lists and does the comparison locally.
What is received. A list of IP ranges.
When. Only after you turn on Crawler address verification on the plugin’s Settings screen. From then on, once a day from a background task, never during a customer’s page view. Activating the plugin does not contact any server.
Which endpoints.
https://openai.com/gptbot.jsonhttps://openai.com/searchbot.jsonhttps://openai.com/chatgpt-user.jsonhttps://www.perplexity.ai/perplexitybot.json
Terms of the providers. OpenAI: terms, privacy. Perplexity: terms, privacy.
While it is off. Nothing is downloaded. Crawler visits are then reported as “declared”: the user agent matched, but the address could not be checked. The plugin never treats an unverified visit as a forged one. Turning verification off again stops the daily download and deletes the lists already downloaded.
The plugin contains no analytics, no telemetry and no licensing calls of its own.
Free and paid
Everything described above is free and stays free. That includes the reporting window, up to the last 400 days, and all four attribution models: last touch, first touch, linear and time decay, chosen on the Settings screen. Nothing about either depends on a key.
A separate paid add-on, installed alongside this plugin, adds:
- CSV export of revenue by AI agent
- A monthly digest email
- Schema enrichment aimed at agents, and a machine readable catalog feed that puts the catalogue into assistant product discovery
- Agent guard rails: per agent keys with scopes, an approval queue, an append only journal with a hash chain, snapshots and undo, and a kill switch
The free plugin contains none of that code. Nothing here is a disabled button waiting for a payment.
Hooks for other plugins
Two actions are published as a stable contract, so a mailing list, a CRM or an operations dashboard can react to the AI channel without polling the database.
clearwayforge/ai_order
Fired by this free plugin when an order has been attributed to the AI channel. Once per order, never once per touch, and only after the attribution row has been written, so a listener that reads the tables sees the order it was woken for. Orders with nothing to attribute fire nothing at all.
do_action( 'clearwayforge/ai_order', int $order_id, string $agent, array $attribution );
$order_id— the WooCommerce order.$agent— the assistant with the largest share:chatgpt,perplexity,claudeand so on. Ties are broken by the dashboard’s own order, so the same order always names the same winner.-
$attribution— model, currency,order_total_cents,ai_total_cents,proven_total_cents,fully_proven, and asourceslist with one entry per touch. Money is always whole cents, never a float. Nothing about the visitor is included: no address, no email, no user agent.example.php:
add_action( ‘clearwayforge/ai_order’, function ( $order_id, $agent, $attribution ) {
error_log( sprintf( ‘#%d came from %s: %d cents’, $order_id, $agent, $attribution[‘ai_total_cents’] ) );
}, 10, 3 );
clearwayforge/action_held
Fired by the paid add-on when an agent action is held for your approval. Once per hold, immediately after the journal entry is written and before the agent gets its answer. Nothing in the store has been changed at that point, and nothing will change until you decide.
do_action( 'clearwayforge/action_held', int $hold_id, string $agent, string $capability, string $summary );
$hold_id— the journal sequence number, which is also the identifier of the hold.$agent— the agent key,agt_….$capability— the ability name, for examplewoocommerce/update-product-price. Not the scope: the scope says what kind of action it is, the ability name says what would actually happen.$summary— one phrase for a human: “Change a product price”.
The arguments carry no part of the agent’s payload. The journal keeps only its hash, for the same reason: the contents of a call do not belong in places outside the store.
This hook does not exist on a site running only the free plugin, because nothing there holds agent actions. Guard has_action() accordingly, or check that the add-on is active.
Installation
- Install and activate WooCommerce 8.0 or newer.
- Upload the plugin and activate it.
- Open Measurement in the admin menu. The first numbers appear as soon as an AI referral reaches your store.
- Optional: on Measurement Settings, choose the attribution model, turn on crawler address verification, and decide whether deleting the plugin should also delete its data.
The plugin keeps its data in its own database tables. The only thing it writes to an order is its AI channel verdict, stored as order meta through the WooCommerce order API.
FAQ
-
Does this send my data anywhere?
-
No. Analysis happens inside WordPress, and no data about your store or your visitors leaves the server. The only outbound requests the plugin can make download the public crawler address lists described in the External services section above. They carry nothing, and they do not happen until you turn crawler address verification on.
-
Google Analytics added an AI channel. Why do I still need this?
-
Because that channel classifies by referrer, and most assistant traffic arrives without one. It also does not include Perplexity or Claude, and it counts sessions rather than order revenue in your own database. The two are complementary: use the channel report for the traffic Google can see, and this plugin for the part it cannot and for the money attached to it.
-
Why do some numbers say “estimated”?
-
Because they are. When an assistant opens a link, the browser often sends no referrer, and the visit is indistinguishable from someone typing the address by hand. Where the plugin can prove the source, it says so; where it infers it, it says that instead, and keeps the two apart in every total.
-
Does it work with High-Performance Order Storage?
-
Yes. HPOS is the assumed configuration, and the plugin declares compatibility with it and with the block-based cart and checkout.
-
Will it slow my store down?
-
Collection adds a user agent check and a URL parse on public page views, and writes to the database after the response has been sent. Nothing the plugin does is on the critical path of a purchase.
-
What happens to my data if I delete the plugin?
-
Nothing, unless you ask for it. History survives deactivation and reinstallation. To remove the plugin’s tables and settings when you delete it, first turn on Delete all Clearway Forge data when the plugin is deleted on the Settings screen. Only a user who can delete plugins can change that setting.
Reviews
There are no reviews for this plugin.
ডেভেলপার এবং কন্ট্রিবিউটর
“Clearway Forge for WooCommerce” is open source software. The following people have contributed to this plugin.
কন্ট্রিবিউটরTranslate “Clearway Forge for WooCommerce” into your language.
ডেভেলপমেন্ট এ আগ্রহী?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.1
- Crawler address verification is now off until you turn it on in Settings. Activation no longer schedules any download.
- Settings: choose whether deleting the plugin also deletes its data.
- Readme and admin screens describe only what the plugin and its add-on actually do.
1.0.0
- First public release.
0.1.0
- First release: attribution to WooCommerce orders, crawler log with address verification,
llms.txtandllms-full.txt, health screen, privacy exporter and eraser.
