SEO Writer for WordPress
Lets approved SEO title, description, canonical and noindex changes land in the SEO plugin you already use.

Each local area page used to take us half a day to create and optimize.
With SEOmatic, we can create hundreds of pages in the same time, which helps our clients make the best use of their budget.
It's transformed how we deliver scalable SEO solutions.
Will Hawkins
Marketing Director, Digi-Business UK
Agents read your Search Console data, do the work, and prove what actually moved. You decide what ships.
14-Day Free Trial. $1 card check, refunded if you cancel. Cancel Anytime.
Right now you cannot answer that without digging through raw server logs. This plugin answers it on one screen: which AI crawlers visit, which pages they take, whether your robots.txt blocks them by accident, and which of your own pages are hard to quote. It runs on your own server, logs no human visitors and records no IP addresses.

An AI-crawler tracker for WordPress. It counts visits from GPTBot, OAI-SearchBot, ChatGPT-User, PerplexityBot, ClaudeBot, Google-Extended, Applebot-Extended, Meta-ExternalAgent and a dozen more, each separately, with the pages they requested most.
Free, with no account, forever. A free SEOmatic account adds per-page AI-readiness scoring, which does not use your monthly question quota. Agents that rewrite the pages assistants skip are part of paid plans. See pricing.
WordPress 5.6 or later and PHP 7.4 or later. Installs from Plugins > Add New like any other plugin.
Free on WordPress.org, or search for it under Plugins > Add New in your WordPress admin.
Once active, the plugin checks each request's user-agent against a list of known AI crawlers. A match is counted; anything else is ignored entirely, with nothing written or sent. It separates the robots from the people: ChatGPT-User means a real person asked ChatGPT something and it fetched your page to answer, which is different from a training crawler, so they show as different rows.
The moment you activate it, it also reads your most recent posts on your own server and flags the ones with no answer up front, no subheadings, or too little content for an assistant to quote.
Connecting a free account is one click with no key to copy. It adds a per-page AI-readiness score, and starts sharing three things with your dashboard: AI-crawler visits (crawler name and page path), visits arriving from an AI assistant (its hostname and the landing path), and searches typed into your own site search. The connect screen says so first, and one checkbox in Settings turns sharing off.
Each crawler counted on its own row, with the pages it requested most.
Reads your robots.txt and names the exact line responsible. If you block on purpose, it says so neutrally and leaves you alone.
Flags recent posts with no answer up front, no subheadings, or too little content.
Off by default, and the settings screen tells you honestly that the evidence says it probably does not help today.
A normal visitor costs one string comparison; crawler hits are written after your page has already been sent.
With a free account: a per-page score of structure, answer placement and schema, and what is missing on that page.
All of this runs on your own server with no account, and sends nothing anywhere until you connect.
Does this log my visitors?
No. If a request's user-agent does not match a known AI crawler, it is ignored entirely and nothing is written or sent. No human visit is ever recorded, and no IP address is stored or transmitted for anyone, connected or not.
Does /llms.txt actually help me get cited by ChatGPT?
Probably not today, and the plugin says so on the settings screen. Google has stated that Search does not use llms.txt, and a study of 137,000 domains found roughly 97% of these files were never requested by anything. It is included because it costs nothing to serve and some coding tools read it.
Why does it show ChatGPT-User separately from GPTBot?
GPTBot is OpenAI building its index. ChatGPT-User is a live request: somebody asked ChatGPT a question and it fetched your page to answer. The second is closer to real traffic, so it is worth seeing on its own.
I am blocking AI crawlers on purpose. Will this nag me?
No. It reports what your robots.txt says and shows the line responsible, then leaves the decision to you.
What is shared once I connect?
AI-crawler visits (the bot's name and the page path), visits arriving from an AI assistant (its hostname and the landing path), and searches typed into your own site search. Query strings are stripped first, no IP address is ever sent, and one checkbox in Settings turns sharing off while the local log keeps working.
See what agents can do on the other platforms SEOmatic connects to.
Lets approved SEO title, description, canonical and noindex changes land in the SEO plugin you already use.
A 301 manager and 404 log that ranks missing pages by what is worth fixing. No account needed.
Audits every post and page in one click, locally, then ranks the fixes by your real Search Console data.
Publishes your business facts as structured data, so AI answer engines quote you instead of guessing.
Ranks your posts by real AI engagement, fetches and referred visits, matched to the WordPress editor.
Finds the posts quietly losing Google traffic, from your own Search Console data.