Title: Geoa – AI SEO &amp; AEO on Autopilot
Author: addonnordic
Published: <strong>July 15, 2026</strong>
Last modified: August 16, 2026

---

Search plugins

![](https://ps.w.org/geoa-ai-visibility/assets/banner-772x250.png?rev=3640305)

![](https://ps.w.org/geoa-ai-visibility/assets/icon-256x256.png?rev=3640305)

# Geoa – AI SEO & AEO on Autopilot

 By [addonnordic](https://profiles.wordpress.org/addonnordic/)

[Download](https://downloads.wordpress.org/plugin/geoa-ai-visibility.0.8.1.zip)

 * [Details](https://test.wordpress.org/plugins/geoa-ai-visibility/#description)
 * [Reviews](https://test.wordpress.org/plugins/geoa-ai-visibility/#reviews)
 *  [Installation](https://test.wordpress.org/plugins/geoa-ai-visibility/#installation)
 * [Development](https://test.wordpress.org/plugins/geoa-ai-visibility/#developers)

 [Support](https://wordpress.org/support/plugin/geoa-ai-visibility/)

## Description

**Get found when your customers ask AI. On autopilot.**

Your customers increasingly ask ChatGPT, Google’s AI Overviews, Perplexity and Claude
instead of searching. Geoa makes your WordPress site something those engines can
read, trust and recommend — then does the work for you. You just watch it happen.

**Three steps:**

 1. **Connect your site** — pair the plugin with your Geoa account in about a minute.
 2. **Geoa makes you AI-ready — automatically.** It builds the registry-verified schema,
    llms.txt and structured data answer engines look for, and (with your one-click 
    approval) publishes it to your site and keeps it in sync. No copy-pasting code.
 3. **Watch it work.** A per-engine AI Visibility Score, Share of Voice and a live “
    is it published?” status show your progress.

Geoa is built for the European market: analysis runs on an **EU-hosted, GDPR-safe**
backend, and — uniquely — it publishes **registry-verified** business schema from
official national registries (Danish CVR, Norwegian Brønnøysund, Swedish Bolagsverket/
Allabolag, Finnish PRH). Output is generated in your own language.

#### What it does

**Structured data for AI**

 * **Registry-verified Organization schema** — enter your registration number; Geoa
   fetches verified legal name, VAT status (VIES), address, founding date and industry,
   and publishes valid JSON-LD. Contact data is hidden automatically when a business
   has marketing protection (GDPR).
 * **Entity verification (sameAs)** — link your Trustpilot, LinkedIn and other profiles,
   plus the official registry page, so engines can corroborate your business. Nordic
   directories included (Krak, Finn.no, Hitta.se, Ratsit, Finder.fi and more).
 * **FAQ schema in your language** — turns the questions and answers already in 
   your posts into FAQPage markup for AI extraction.
 * **Article schema** — author, dates and publisher for single posts.
 * **WooCommerce Product schema** — price, availability, brand, GTIN, ratings and
   an EU return policy (14-day right of withdrawal) so AI shopping agents can cite
   your products. Variable products emit a proper price range, and when your business
   is verified the Offer is linked to a **registry-verified seller** — a trust signal
   generic Product schema can’t express. A per-product AI-readiness score sits in
   the product editor.
 * **Optional llms.txt** — a curated, opt-in file for AI crawlers.

**Analysis**

 * **In-editor AEO readiness** — a per-post score right in the block editor. Connected
   sites are scored against Geoa’s 23-signal GEO content standard (the same checklist
   Geoa Content uses), with a concrete hint for every missed signal; unconnected
   sites get a local estimate, labelled as such.
 * **E-E-A-T trust signals** — identity, contact, about, privacy and author signals.
 * **Citation coverage** — which third-party sources you have and which are missing.
   Connected sites get Geoa’s tier-ranked source list (Wikidata, Crunchbase, Google
   Business Profile and more) with create-links and time estimates, and the profile
   URLs you enter sync to your Geoa account as sameAs.
 * **AI crawler activity** — see when GPTBot, ClaudeBot, PerplexityBot and others
   fetch your pages.

**AI visibility & automatic fixes (connect a Geoa account)**

 * **AI Visibility Score** per engine, **Share of Voice**, and an **AI Command Center**
   of prioritised actions.
 * **Approved fixes, published for you** — approve a fix in your Geoa dashboard (
   an llms.txt, a structured-data block, a meta title or description) and Geoa publishes
   it on your site and keeps it in sync, checked hourly. An approved fix always 
   takes precedence over the plugin’s own output, so you never get a duplicate —
   and you can turn it off at any time.
 * **Articles from Geoa Content, delivered as drafts** — articles you mark “ready”
   in Geoa Content (content.geoa.app) appear as draft posts in WordPress, prepared
   with your business knowledge, an FAQ section and SEO metadata. You review and
   press Publish yourself — nothing goes live automatically — and once live, Geoa
   measures the article’s actual effect.

Geoa never emits duplicate structured data: when Yoast or Rank Math already provide
a schema type, Geoa augments their graph instead of adding a second node.

### External services

This plugin is a client for the Geoa service (https://geoa.app), operated by AddonNordic
ApS. It sends requests to the Geoa API at https://api.geoa.app to verify your business
against official national registries and to run AI-visibility analysis. It uses 
no other external service.

What data is sent, and when:

 * Registry verification — when you enter your country and registration number in
   Geoa  Settings (or open that screen with them saved), that registration number
   is sent so the service can verify your business and return your official company
   data (legal name, VAT status, address, industry, founding date).
 * Structured-data and analysis features — when you use them, the URL and the public
   content of the page(s) you choose to analyse are sent.
 * AI-visibility scoring — only after you connect a Geoa account: your per-site 
   pairing key (obtained from the Geoa dashboard) is sent as an authentication header
   so the service knows which account to read. The free tier never triggers a paid
   backend call.
 * Approved fixes — only after you connect a Geoa account and enable “Apply approved
   fixes”: once an hour the plugin fetches the fixes you approved in your Geoa dashboard(
   llms.txt, structured data, meta) and reports back which are live. Only your pairing
   key is sent; you can turn this off at any time.
 * Article import — only after you connect a Geoa account: once an hour the plugin
   fetches articles you marked “ready” in Geoa Content and creates them as draft
   posts for your review. It reports back which drafts were created and, when you
   publish one, its permalink — so Geoa can measure the article’s effect. Only your
   pairing key, post IDs and permalinks are sent; drafts are never published automatically,
   and you can turn this off at any time.
 * Plan and usage — only after you connect a Geoa account, and only inside wp-admin:
   when you open Geoa  Settings the plugin reads your own plan, limits and monitored-
   question count so it can show them. Only your pairing key is sent; the result
   is cached, and no request is made from your site’s public pages.
 * Monitored questions — only after you connect a Geoa account, and only when you
   add or remove a question in Geoa  Settings: the question text you typed is sent
   so Geoa can track whether AI engines cite you for it. Only your pairing key and
   that text are sent, and only on your action.
 * Chosen name — only after you connect a Geoa account, and only when you set the
   name your business should be known as (setup or Geoa  Settings): that name and
   its spelling variants are sent so the schema on your site and the AI measurement
   in your dashboard describe the same entity.
 * Profile URLs — only after you connect a Geoa account, and only when you save 
   a profile URL (Trustpilot, LinkedIn, …) in Geoa  Settings: that URL is sent so
   it can appear as sameAs in every schema Geoa publishes for you.
 * In-editor scoring — only after you connect a Geoa account, and only when you 
   open a post in the block editor: the post’s title and content are sent so Geoa
   can score the draft against its GEO content standard. The result is cached until
   the content changes; nothing is stored server-side.
 * Content opportunities and citation sources — only after you connect a Geoa account,
   and only inside wp-admin: when you open the Geoa dashboard the plugin reads your
   opportunity list and source checklist. Only your pairing key is sent; results
   are cached.
 * Geoa badge (optional, off by default) — if you switch the badge on and place 
   it on your site, your visitors’ browsers load the badge image from https://geoa.
   app. The image is an anonymous, unguessable address; the fetch is not logged 
   per visitor, sets no cookie and assigns no identifier. Switch the badge off and
   no such request is made.

This plugin does NOT track your site’s visitors. It sets no cookies, adds no front-
end tracking scripts, assigns no visitor identifiers, and never sends visitor or
personal data to any external service. The AI crawler log records only the user-
agent of known AI crawlers (e.g. GPTBot, ClaudeBot) that request your pages; it 
is stored locally in your own database and is never transmitted anywhere.

Service: https://geoa.app
 Terms of Service: https://geoa.app/terms Privacy Policy:
https://geoa.app/privacy

## Screenshots

[⌊Verify your business against the official national registry and publish registry-
verified schema — Geoa → Settings.⌉⌊Verify your business against the official national
registry and publish registry-verified schema — Geoa → Settings.⌉[

Verify your business against the official national registry and publish registry-
verified schema — Geoa  Settings.

[⌊Per-post answer-engine readiness, right in the block editor.⌉⌊Per-post answer-
engine readiness, right in the block editor.⌉[

Per-post answer-engine readiness, right in the block editor.

[⌊Per-product AI readiness and enriched Product schema for WooCommerce.⌉⌊Per-product
AI readiness and enriched Product schema for WooCommerce.⌉[

Per-product AI readiness and enriched Product schema for WooCommerce.

[⌊E-E-A-T trust signals and citation coverage.⌉⌊E-E-A-T trust signals and citation
coverage.⌉[

E-E-A-T trust signals and citation coverage.

[⌊AI crawler activity — which answer engines fetched your pages.⌉⌊AI crawler activity—
which answer engines fetched your pages.⌉[

AI crawler activity — which answer engines fetched your pages.

## Blocks

This plugin provides 1 block.

 *   Geoa badge

## Installation

 1. Upload the `geoa-ai-visibility` folder to `/wp-content/plugins/`, or install it
    from the Plugins screen.
 2. Activate the plugin.
 3. Go to **Geoa  Settings**, choose your country and enter your registration number,
    then publish your registry-verified schema.
 4. (Optional) Connect a Geoa account with a pairing code from your Geoa dashboard 
    to see live AI-visibility scores.

## FAQ

### Do I need a Geoa account?

No. Registry-verified schema, FAQ/Article/Product schema, the in-editor readiness
check, E-E-A-T and the AI crawler log all work without an account. A Geoa account
adds live per-engine AI-visibility scoring, Share of Voice, the AI Command Center
and automatically published approved fixes.

### Can Geoa publish fixes automatically?

Yes, when you connect a Geoa account and enable “Apply approved fixes”. Anything
you approve in your Geoa dashboard — an llms.txt, a structured-data block, a meta
title or description — is then published on your site and kept in sync, checked 
once an hour. Approved fixes always take precedence over the plugin’s own output,
so you never get a duplicate, and you can turn the whole thing off at any time. 
Nothing is published without your approval.

### Does it conflict with Yoast or Rank Math?

No. When an SEO plugin already emits a schema type, Geoa merges its data into that
plugin’s graph instead of adding a duplicate node.

### Which countries are supported for registry verification?

Denmark (CVR), Norway (Brønnøysund), Sweden (Bolagsverket/Allabolag) and Finland(
PRH).

### Is my data processed in the EU?

Yes. The Geoa backend is EU-hosted, and contact data covered by marketing protection
is never published.

### Does it work with WooCommerce?

Yes. On product pages it publishes enriched Product schema — price, availability,
brand, GTIN, ratings, an EU return policy and, when your business is verified, a
registry-verified seller. Variable products emit a correct price range (AggregateOffer).
If Yoast or Rank Math already emits Product schema, Geoa merges these fields into
their graph instead of adding a duplicate. A per-product AI-readiness score appears
in the product editor.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Geoa – AI SEO & AEO on Autopilot” is open source software. The following people
have contributed to this plugin.

Contributors

 *   [ addonnordic ](https://profiles.wordpress.org/addonnordic/)

[Translate “Geoa – AI SEO & AEO on Autopilot” into your language.](https://translate.wordpress.org/projects/wp-plugins/geoa-ai-visibility)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/geoa-ai-visibility/),
check out the [SVN repository](https://plugins.svn.wordpress.org/geoa-ai-visibility/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/geoa-ai-visibility/)
by [RSS](https://plugins.trac.wordpress.org/log/geoa-ai-visibility/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.8.1

 * Zero-field connection now also works for existing installs: updating the plugin(
   not just activating it) triggers the automatic connection attempt on unpaired
   sites, and opening any Geoa screen retries it directly — no dependency on WP-
   Cron.
 * The domain-proof route is never page-cached anymore (no-store headers): LiteSpeed-
   style page caches could serve a stale token to the verifying backend and reject
   a correct connection attempt.

#### 0.8.0

 * Zero-field connection: the plugin now connects itself to Geoa on activation. 
   It proves control of your site with a short-lived token served from your own 
   REST API — no account signup, no pairing code, nothing to type. The pairing-code
   flow remains as a manual fallback.
 * Your first finding, in seconds: right after connecting, the welcome screen shows
   one real, named finding about your site (live structured-data probe plus your
   official business-registry identity) — honestly reported, never invented.

#### 0.7.1

 * Deleting the plugin no longer erases your setup. Your business identity, chosen
   name, profile URLs and feature settings now survive a delete + reinstall — until
   now they were wiped, which silently un-published your verified schema and dropped
   the site back into onboarding. Connection keys and caches are still always removed;
   if you want a truly clean removal, tick the new “Remove all Geoa data when the
   plugin is deleted” option under Geoa  Settings first.

#### 0.7.0

 * One rulebook instead of three. Connected sites now get their scores and task 
   lists straight from Geoa, instead of the plugin computing its own local versions
   that could disagree with your dashboard.
 * In-editor scoring now uses Geoa’s GEO content standard — the same 23-signal checklist
   Geoa Content scores its own articles with — with a concrete hint under every 
   signal you miss. The panel says whose verdict you are looking at; unconnected
   sites keep the local estimate, labelled as such.
 * Citation sources are now Geoa’s tier-ranked list (Wikidata, Crunchbase, Google
   Business Profile, Bing Webmaster Tools and 15+ more), each with a why, a create-
   link and a time estimate. Wikidata replaces Wikipedia in the built-in list — 
   a small business can actually get a Wikidata item, and it is what anchors your
   entity for AI.
 * Profile URLs you enter in WordPress are now saved to your Geoa account, so they
   appear as sameAs in every schema Geoa publishes — including dashboard-approved
   fixes. Until now those links lived only in WordPress and vanished from the page
   the moment an approved fix took over its schema.
 * New “What to write next” card: questions AI already answers where your business
   is not mentioned — straight from your Geoa measurement, each one an article waiting
   to be written.
 * A partially met trust signal now looks different from a fully met one (half-filled
   dot) — the E-E-A-T list could previously read as complete when it wasn’t.

#### 0.6.0

 * You now choose what AI should know you as. The registry says what your _company_
   is called — but a shop is known by its brand and a SaaS by its product, and that
   is the name customers ask for. Setup suggests the registered name and lets you
   replace it; it becomes schema.org `name`, while the registered name stays on 
   as `legalName`, so nothing verified is lost.
 * New “Other spellings” field. AI writes a name the way it likes — “Addon Nordic”
   for AddonNordic — and a mention it cannot connect to you is a mention you get
   no credit for. Your variants are published as `alternateName`.
 * The name you pick is sent to your Geoa dashboard, so the schema on your site 
   and the AI visibility Geoa measures are finally about the same thing. Sites without
   a Geoa account keep working exactly as before.
 * Corrected the engine list: Geoa measures ChatGPT, Gemini, Perplexity and Claude.
   Copilot was listed but has never been measured.

#### 0.5.1

 * The Geoa mark now appears in the WordPress admin menu instead of a generic icon,
   and the plugin’s listing artwork matches the rest of Geoa.
 * Corrected the company name to AddonNordic, and the screenshot captions so each
   one describes the screen it actually shows.

#### 0.5.0

 * AI-generated articles imported from Geoa Content now carry their AI marking (
   EU AI Act art. 50(2)) as the last paragraph of the draft, where your readers 
   can see it — until now the marking travelled with the article but was never shown.
   The wording comes from Geoa, in the article’s own language.
 * Tables in your articles now arrive as real tables. Until now a table came through
   as a row of raw pipe characters in a single paragraph — and a table is one of
   the strongest signals that gets your page quoted by AI answers, so it is worth
   having intact. Quotes and code examples now come through properly too.
 * Drafts that are still unpublished are refreshed once so the marking is added 
   and any broken table is rebuilt. Posts you have already published are never touched,
   as always.
 * Drafts you have started editing yourself are no longer overwritten when a newer
   version arrives from Geoa. Your work is yours; only untouched drafts are refreshed.(
   The one-time update above still reaches every existing draft, since the plugin
   has no record of earlier edits — after that, your edits are always respected.)
 * New: a “Your Geoa plan” panel in Geoa  Settings shows the plan this site is on,
   how many of your monitored AI questions you have used, and what each plan includes.
 * Nothing is gated: every feature that worked before works exactly the same on 
   every plan. The panel only shows you where you stand.
 * If your plan cannot be loaded, the plugin says so rather than guessing — it never
   displays a plan it has not confirmed.
 * “Refresh plan” re-reads your plan immediately, so an upgrade shows up without
   waiting for the hourly cache.
 * New: manage the questions Geoa monitors you for, directly in WordPress — see 
   the current set, add one, paste a whole list (one per line), or remove one.
 * If part of a pasted list doesn’t fit your plan, the plugin says exactly how many
   were added and how many didn’t, and keeps your text so nothing has to be retyped.
 * New: the Geoa badge — show it on your site and Geoa re-scans you every month 
   for free, with score history, instead of the free plan’s single one-off scan.
   Add it with a block, a widget or the [geoa_badge] shortcode.
 * The badge is off until you switch it on, and your public pages never call Geoa
   to render it.

#### 0.4.0

 * New: articles you mark “ready” in Geoa Content (content.geoa.app) are now imported
   automatically as draft posts — reviewed and published by you in WordPress, never
   auto-published.
 * Drafts are refreshed if the studio version changes before you publish; posts 
   you have published are never touched.
 * When a Geoa draft goes live, the plugin reports the permalink back so Geoa can
   measure the article’s actual effect (Google clicks and AI visits) in the Effekt
   view.
 * Article import can be disabled with the geoa_articles_enabled option.

#### 0.3.3

 * The connected status is now verified against the Geoa backend (cached hourly)
   instead of only checking that a key is stored locally.
 * If your site’s key is revoked or deactivated on the Geoa side, the plugin now
   shows a clear reconnect warning in wp-admin (with a one-step re-pair form) instead
   of a green “connected” checkmark.
 * Approved fixes already published stay live from the last synced copy while the
   connection is broken — nothing is silently removed — and the sync status says
   so explicitly.

#### 0.3.2

 * Added a single, dismissible in-admin prompt that asks engaged users (after real
   use) to leave a review. No incentive is offered and no functionality is gated
   behind it.

#### 0.3.1

 * Renamed to “Geoa – AI SEO & AEO on Autopilot” to describe more clearly what the
   plugin does. No functional changes.

#### 0.3.0

 * Approved fixes: fixes you approve in your Geoa dashboard (llms.txt, structured
   data, meta) are now pulled hourly and published on your site, with an always-
   visible status and a “Sync now” button under Geoa  Settings. Requires a connected
   account and is off unless enabled.
 * An approved fix takes precedence over the plugin’s own local output (no duplicate
   llms.txt or schema).

#### 0.2.0

 * WooCommerce: Product Offers are now linked to your registry-verified seller (
   name + tax ID) when your business is verified.
 * WooCommerce: variable products emit a correct price range (AggregateOffer with
   low/high price and offer count) instead of a single minimum price.
 * WooCommerce: Product schema now merges into Yoast or Rank Math’s graph (adding
   the EU return policy and verified seller they lack) instead of staying silent,
   so its value is never lost on stores that already run an SEO plugin.
 * WooCommerce: added itemCondition and, for active sales, priceValidUntil to Offers.
 * WooCommerce: a per-product AI-readiness scorecard in the product editor (works
   in both the classic and block product editor).

#### 0.1.0

 * Initial release: registry-verified Organization schema (DK/NO/SE/FI) with sameAs;
   FAQ, Article and WooCommerce Product schema; optional llms.txt; in-editor AEO
   readiness; E-E-A-T and citation-coverage scorecards; AI crawler log; per-site
   pairing with AI Visibility Score, Share of Voice and AI Command Center.

## Meta

 *  Version **0.8.1**
 *  Last updated **21 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.6 or higher **
 *  Tested up to **7.0.4**
 *  PHP version ** 8.0 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/geoa-ai-visibility/)
 * Tags
 * [aeo](https://test.wordpress.org/plugins/tags/aeo/)[AI](https://test.wordpress.org/plugins/tags/ai/)
   [schema](https://test.wordpress.org/plugins/tags/schema/)[seo](https://test.wordpress.org/plugins/tags/seo/)
   [woocommerce](https://test.wordpress.org/plugins/tags/woocommerce/)
 *  [Advanced View](https://test.wordpress.org/plugins/geoa-ai-visibility/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/geoa-ai-visibility/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/geoa-ai-visibility/reviews/)

## Contributors

 *   [ addonnordic ](https://profiles.wordpress.org/addonnordic/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/geoa-ai-visibility/)