OtterlyAI Agent Analytics

Description

AI assistants read your site. OtterlyAI Agent Analytics shows you which ones, how often, and which pages they take.

This plugin is the WordPress data source for that. It watches incoming requests, and whenever one comes from a known AI agent — GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Bytespider, CCBot and around forty more — it reports that single request to OtterlyAI.

It is handled entirely server-side by WordPress:

  • No JavaScript is added to your pages, so nothing slows down for your visitors and nothing can be blocked by an ad blocker.
  • The report is sent after the response has already gone out, so a page never waits on it.
  • Ordinary human traffic is never reported. Only requests whose User-Agent matches a bundled AI-agent signature.

You need an OtterlyAI account and an Agent Analytics key. Enter it under Settings OtterlyAI and press Save and validate.

External service

This plugin sends data to OtterlyAI Agent Analytics (https://analytics.otterly.ai), a service operated by OtterlyAI. Nothing is sent until a site administrator saves an Agent Analytics key.

When something is sent: only for a request whose User-Agent matches one of the AI-agent signatures bundled with the plugin.

What is sent, for such a request — exactly five fields:

  1. the requested URL,
  2. the matched User-Agent string,
  3. the timestamp of the request,
  4. the referer, if the request had one,
  5. the HTTP response status the server returned for the request.

What is not sent: No IP address is collected or transmitted — the plugin does not read any IP header at all. No cookies. No visitor, user or account data. No page content. Nothing at all for ordinary visitor traffic.

The key itself is also sent, as an HTTP Authorization header, to authenticate the report and to check the key when you press Save and validate.

Service terms: https://otterly.ai/terms
Privacy policy: https://otterly.ai/privacy

The AI agent list

The list of AI-agent signatures is bundled with the plugin, not fetched from anywhere. It is kept current by publishing new plugin versions here, so updating the plugin is how you get newly-appeared crawlers.

Privacy

This plugin transmits request metadata for AI-agent traffic only, as listed under “External service” above. It stores one option in your database, containing your Agent Analytics key and the result of its last validation. That option is readable only by administrators, is never exposed to visitors or through the REST API, and is deleted when the plugin is uninstalled.

Installation

  1. Install and activate the plugin.
  2. In OtterlyAI, sign in and open General Data sources.
  3. Add WordPress as a logs provider for this site’s domain, and copy the Agent Analytics key it shows you.
  4. In WordPress, open Settings OtterlyAI, paste the key, and press Save and validate.

The status turns to Connected once OtterlyAI has confirmed the key. From then on, AI-agent requests are reported automatically.

FAQ

Where do I find my Agent Analytics key?

In OtterlyAI, under General Data sources: add WordPress as a logs provider and copy the key it gives you. The key is shown once, so copy it before you close the dialog.

Is this the same as my OtterlyAI REST API key?

No. The Agent Analytics key belongs to the WordPress data source and can only be used to report crawler requests. Your public REST API key is separate and is not used by this plugin.

Does it collect my visitors’ IP addresses?

No. The plugin never reads an IP header and never sends one.

It says “Not verified”. What does that mean?

Your key was saved, but no usable answer came back, so nothing is known about the key either way. Reporting stays active, because the key is probably fine. Press Save and validate again later to confirm it.

Common causes: a temporary network problem, an outbound firewall on your host, or the OtterlyAI validation service being briefly unavailable. The plugin deliberately reports this as “Not verified” rather than blaming your key, because a problem on our side must never look like a bad key.

It says OtterlyAI rejected my key.

The key is wrong, incomplete, or its data source was deleted in OtterlyAI. Copy it again from General Data sources. While a key is rejected, the plugin stops reporting rather than repeatedly sending requests that will be refused.

It says “Domain mismatch”.

Every Agent Analytics key belongs to one domain — the data source it was created for. The key you entered belongs to a different domain than this site, so crawler visits recorded here would be filed under that other domain, where you would never see them.

The key is not saved in this case, so nothing is reported until you enter the right one. In OtterlyAI, open General Data sources, add WordPress as a data source for this site’s own domain, and use the key it gives you.

It says “Domain not verified”.

OtterlyAI could not tell which domain this site is, so it did not save the key. Nothing is wrong with the key itself.

WordPress normally includes the site address in the requests it makes to other services. Something on this site is removing or rewriting it — most often a security or performance plugin that edits outgoing request headers, or a host that strips them. Disable that behaviour for outgoing requests and press Save and validate again.

Will it slow down my site?

No. Detection is a substring check against a bundled list, and the report is sent on the shutdown hook — after the response has already been delivered — without waiting for a reply.

How do I stop it?

Open Settings OtterlyAI, tick “Remove the saved key and stop reporting”, and save. Deactivating or deleting the plugin also stops it, and deleting it removes the stored key. Disabling the data source in OtterlyAI revokes the key on the server side.

Reviews

There are no reviews for this plugin.

Contributors and Developers

“OtterlyAI Agent Analytics” is open source software. The following people have contributed to this plugin.

Contributors

Change Log

1.1.0

  • Reports now include the HTTP response status of the request, so pages an AI agent could not fetch are separated from pages that were served.

1.0.0

  • First release. Configure your Agent Analytics key from Settings OtterlyAI, with server-side reporting of AI crawler requests.