Title: Visibility &#8211; Lightweight SEO for Search and AI
Author: Fernando Tellado
Published: <strong>chunyo 8, 2026</strong>
Last modified: chunyo 26, 2026

---

Search plugins

![](https://ps.w.org/native-aeo-pack/assets/banner-772x250.jpg?rev=3583628)

![](https://ps.w.org/native-aeo-pack/assets/icon-256x256.png?rev=3583628)

# Visibility – Lightweight SEO for Search and AI

 By [Fernando Tellado](https://profiles.wordpress.org/fernandot/)

[Download](https://downloads.wordpress.org/plugin/native-aeo-pack.1.7.0.zip)

[Live Preview](https://arg.wordpress.org/plugins/native-aeo-pack/?preview=1)

 * [Details](https://arg.wordpress.org/plugins/native-aeo-pack/#description)
 * [Reviews](https://arg.wordpress.org/plugins/native-aeo-pack/#reviews)
 *  [Installation](https://arg.wordpress.org/plugins/native-aeo-pack/#installation)
 * [Development](https://arg.wordpress.org/plugins/native-aeo-pack/#developers)

 [Support](https://wordpress.org/support/plugin/native-aeo-pack/)

## Description

**Visibility** is the SEO essentials without the suite. It covers what most sites
actually need (meta titles and descriptions, canonical URLs, Open Graph and Twitter
Cards, JSON-LD schema, robots directives, redirects, AI Discovery with llms.txt 
and Markdown for Agents, robots.txt editor and native XML sitemap customization)
in about 109 KB, with no Pro tier, no upsell banners and nothing phoning home. It
is built on WordPress core APIs (`wp_robots`, `wp_sitemaps_*`, `register_post_meta`,
the Block Editor), so most of the work is the platform’s, already optimized.

Coming from Yoast, Rank Math, All in One SEO or SEOPress? Visibility imports your
titles, descriptions, robots, Open Graph, schema and redirects in one click, so 
switching takes minutes. And the clean metadata it outputs is exactly what search
engines and AI assistants (ChatGPT, Perplexity, Gemini) read to understand and cite
your content: the AEO/GEO angle, without the bloat.

Four modules you toggle independently from the **Overview** tab:

 * **Discover** — meta title and description, Open Graph and Twitter Cards, Article/
   BreadcrumbList/Person JSON-LD and Site Identity, plus AI discovery: llms.txt,
   Markdown for agents and a robots.txt editor. Per-post and per-term overrides 
   for title, description, canonical, social title and description, and image.
 * **Indexing** — bulk or per-item noindex / nofollow by post type and taxonomy,
   with smart exclusions and rules for search, 404, date, paginated, attachment 
   and author archives plus RSS feeds. Quick Edit, Bulk actions and a Robots column
   on your lists.
 * **Sitemaps** — control over the native XML sitemap: exclude post types, taxonomies,
   users, posts and terms; lastmod dates; 301s from old sitemap URLs; and anything
   noindexed is kept out automatically.
 * **Redirects** — a lightweight 301 / 302 / 307 / 410 manager resolved in PHP (
   no .htaccess, no custom table, no 404 log), with CSV import / export, suggested
   redirects when you delete a post, and the WordPress slug-change redirects surfaced
   to manage.

Per-post controls live in a single Block Editor panel, with a matching Classic Editor
meta box, plus Quick Edit and Bulk actions on the post list.

Visibility replaces a full SEO suite, it does not run alongside one: two SEO plugins
fight over the `<head>`. If it detects Yoast SEO, Rank Math, All in One SEO, SEOPress,
The SEO Framework or Slim SEO active, it warns you on the settings page so you run
only one. The exact footprint, the migration detail and the recommended companion
plugins are below.

### Perfect companions

Visibility is fully independent — these plugins aren’t required — but they pair 
really well with it:

 * [VigIA](https://wordpress.org/plugins/vigia/) — AI visibility, crawler analytics,
   Site Identity JSON-LD on the home page. Visibility coordinates `@id` references
   with VigIA so both can add schema without duplicating the Organization or WebSite
   nodes.
 * [AI Share & Summarize](https://wordpress.org/plugins/ai-share-summarize/) — share
   buttons for social networks and AI assistants. Helps your content reach both 
   audiences and language models.
 * [AI Content Signals](https://wordpress.org/plugins/ai-content-signals/) — control
   how AI systems can use your content (training, search, both) through `robots.
   txt` directives endorsed by Cloudflare.
 * [Vigilante](https://wordpress.org/plugins/vigilante/) — all-in-one WordPress 
   security: firewall, login protection, security headers, 2FA, file integrity monitoring.

### External services

This plugin connects to **Gravatar** (operated by Automattic Inc.) to check whether
the post or page author has a public Gravatar avatar, so it can be exposed in Open
Graph tags (`og:image`) and in Person JSON-LD (`image`) for E-E-A-T.

What data is sent and when:

 * When a singular view is rendered and the Open Graph module is active, and no 
   other image source exists (per-post `og:image`, featured image, WooCommerce gallery
   image, inline content image), the plugin sends an MD5 hash of the lowercased 
   and trimmed author email to `https://www.gravatar.com/avatar/{hash}?d=404` via`
   wp_remote_head()` (HEAD request, no body).
 * When an author archive is rendered and the Person schema module is active, the
   same probe is performed for that author.
 * The original email address is **never** sent — only an MD5 hash, which is the
   standard Gravatar lookup mechanism.
 * The result (found / not found) is cached for 24 hours in a transient so subsequent
   page loads do not hit Gravatar again.

This is the same mechanism WordPress itself uses to display Gravatar avatars in 
comments. Gravatar’s privacy policy: https://automattic.com/privacy/

### Performance and security

“Lightweight” should be a measurement, not a slogan. These are the real numbers 
for this release, refreshed on every update.

#### Footprint (1.7.0)

 * **Download size:** about 180 KB zipped.
 * **Codebase:** 36 PHP files, roughly 15,700 lines of PHP.
 * **Zero custom database tables.** Settings live in a single autoloaded option;
   per-post, per-term and per-author values use native WordPress meta that is already
   in the object cache.
 * **Zero cron jobs** and no scheduled background processes.
 * **Zero external HTTP calls**, with a single exception: a cached Gravatar HEAD
   probe (24-hour TTL) that exposes the author avatar for E-E-A-T, the same lookup
   WordPress already performs for comment avatars.
 * **Built on WordPress core APIs** (`wp_robots`, `wp_sitemaps_*`, `register_post_meta`,`
   get_canonical_url`, the Block Editor), not private reimplementations, so most
   of the work is the platform’s and already optimized.

#### Security

 * **Every release passes a security audit** of the changed code (sanitization, 
   escaping, nonces, capabilities, SQL) before it ships. It is a release gate, not
   an afterthought.
 * **Minimal attack surface by design:** no custom tables, no unauthenticated endpoints,
   output escaped where it is printed, input validated against allowlists, and prepared
   statements for every database query.
 * **No premium tier, no telemetry, no data collection.** Nothing phones home.

A smaller surface is a smaller target.

### Support

Need private support or custom development?

Do you need one-on-one help, priority troubleshooting, or a custom feature, integration,
or tweak built specifically for your site? I offer private support and custom development.
Just [contact me](https://arg.wordpress.org/plugins/native-aeo-pack/native-aeo-pack@ayudawp.com?output_format=md)
and tell me what you need.

Need help or have suggestions?

 * [Official website](https://visibility.quest)
 * [WordPress support forum](https://wordpress.org/support/plugin/native-aeo-pack/)
 * [YouTube channel](https://www.youtube.com/AyudaWordPressES)
 * [Documentation and tutorials](https://ayudawp.com)

Love the plugin? Please leave us a 5-star review and help spread the word!

### About AyudaWP

We are specialists in WordPress security, SEO, AI and performance optimization plugins.
We create tools that solve real problems for WordPress site owners while maintaining
the highest coding standards and accessibility requirements.

## Screenshots

[⌊Overview tab — toggle the Discover, Indexing, Sitemaps and Redirects modules, 
and run the one-click importers (from your previous SEO plugin or the legacy AyudaWP
SEO plugins) with a per-plugin breakdown.⌉⌊Overview tab — toggle the Discover, Indexing,
Sitemaps and Redirects modules, and run the one-click importers (from your previous
SEO plugin or the legacy AyudaWP SEO plugins) with a per-plugin breakdown.⌉[

Overview tab — toggle the Discover, Indexing, Sitemaps and Redirects modules, and
run the one-click importers (from your previous SEO plugin or the legacy AyudaWP
SEO plugins) with a per-plugin breakdown.

[⌊Discover tab — meta title, meta description, Open Graph, Twitter Card and JSON-
LD schema, with site-wide defaults and per-post overrides.⌉⌊Discover tab — meta 
title, meta description, Open Graph, Twitter Card and JSON-LD schema, with site-
wide defaults and per-post overrides.⌉[

Discover tab — meta title, meta description, Open Graph, Twitter Card and JSON-LD
schema, with site-wide defaults and per-post overrides.

[⌊Indexing tab — bulk noindex / nofollow by post type and taxonomy, plus live search
to add individual posts or terms, and rules for search, 404, archives, pagination
and feeds.⌉⌊Indexing tab — bulk noindex / nofollow by post type and taxonomy, plus
live search to add individual posts or terms, and rules for search, 404, archives,
pagination and feeds.⌉[

Indexing tab — bulk noindex / nofollow by post type and taxonomy, plus live search
to add individual posts or terms, and rules for search, 404, archives, pagination
and feeds.

[⌊Sitemaps tab — exclude post types, taxonomies, user roles and specific posts or
terms (by ID or slug), with lastmod control and max URLs per sitemap.⌉⌊Sitemaps 
tab — exclude post types, taxonomies, user roles and specific posts or terms (by
ID or slug), with lastmod control and max URLs per sitemap.⌉[

Sitemaps tab — exclude post types, taxonomies, user roles and specific posts or 
terms (by ID or slug), with lastmod control and max URLs per sitemap.

[⌊Per-post controls — the Visibility panel in the Block Editor and the Robots column
with Quick Edit in the post list.⌉⌊Per-post controls — the Visibility panel in the
Block Editor and the Robots column with Quick Edit in the post list.⌉[

Per-post controls — the Visibility panel in the Block Editor and the Robots column
with Quick Edit in the post list.

[⌊Redirects tab — the lightweight 301 / 302 / 307 / 410 redirect manager with CSV
import and export, the redirects suggested from posts you deleted, and the WordPress
slug-change redirects you can take over or remove.⌉⌊Redirects tab — the lightweight
301 / 302 / 307 / 410 redirect manager with CSV import and export, the redirects
suggested from posts you deleted, and the WordPress slug-change redirects you can
take over or remove.⌉[

Redirects tab — the lightweight 301 / 302 / 307 / 410 redirect manager with CSV 
import and export, the redirects suggested from posts you deleted, and the WordPress
slug-change redirects you can take over or remove.

## Installation

 1. Upload the `native-aeo-pack` folder to `/wp-content/plugins/` or install through
    the Plugins screen.
 2. Activate the plugin.
 3. Open **Visibility** in the admin sidebar to review the active modules and tune 
    the defaults.
 4. Done. Meta tags, robots directives and sitemap filters are applied automatically
    based on your settings.

## FAQ

### Does Visibility replace Yoast / Rank Math / AIOSEO?

For most sites, yes. Visibility covers what 90% of sites actually need: titles, 
meta descriptions, canonical URLs, Open Graph, schema, robots directives, redirect
management and sitemap control — and it imports your per-post data from those plugins
in one click. It does not include keyword analysis or content scoring. If you don’t
need those, Visibility is a much lighter alternative. If you do, stick with your
current SEO plugin — Visibility isn’t meant to run alongside.

### How do I migrate from Yoast SEO, Rank Math or All in One SEO?

Install and activate Visibility. If data from any of those plugins exists in your
database (the suite can be active or already deactivated), the **Overview** tab 
shows an import card with a per-field breakdown: titles, meta descriptions and robots
overrides on posts and on taxonomy terms, plus canonical URLs, Open Graph images,
social titles and descriptions, the default social image and the per-content-type
schema type. Your existing 301, 302, 307 and 410 redirects come over too, from Rank
Math, All in One SEO and SEOPress. One click copies it all into Visibility without
touching the source plugin, skipping anything you already set here and any value
built from the suite’s template variables (`%%title%%`, `%title%`, `#post_title`)—
Visibility generates those from your real content. From its free version, All in
One SEO stores fewer fields (no Open Graph images and no per-term SEO, which are
AIOSEO Pro features); Yoast and Rank Math import the full list, taxonomy terms included.
The per-field breakdown always shows exactly what was found before you import, and
the import is non-destructive and idempotent: your existing Visibility values win
and re-running never duplicates. Review a few entries, then deactivate the suite.
Old sitemap URLs (`sitemap.xml`, `post-sitemap.xml`…) keep working through a 301
redirect to the native `/wp-sitemap.xml`.

### I used Native SEO Meta Tags, NoIndexer or Sitemap Customizer. How do I migrate?

Install and activate Visibility. If it finds data from any of those plugins, the**
Overview** tab shows an import card with a per-plugin breakdown and an “Import now”
button. The import is non-destructive (it copies, never deletes) and your existing
Visibility values win on any conflict, so you can run it safely. Once you’ve imported
and checked everything, deactivate the old plugins.

### Are there any database tables?

No. Visibility stores its settings in a single WordPress option and uses native 
post, term and user meta tables for per-content overrides. Deleting the plugin removes
the option; per-content overrides remain so reinstalling does not lose your work.

### Can I disable individual modules?

Yes. The **Overview** tab lets you toggle Discover (meta tags), Indexing (robots),
Sitemaps and Redirects independently. You can run only what you need.

### Does it work with custom post types and custom taxonomies?

Yes. All public post types and taxonomies are supported — including WooCommerce 
product categories, tags and attributes (the latter requires “Enable Archives?” 
in the WooCommerce attribute settings).

### How do I set noindex on a single post?

In the Block Editor, open the **Visibility** panel in the post sidebar and tick 
the noindex toggle. In the Classic Editor, the same toggle is in the Visibility 
meta box. You can also use Quick Edit or Bulk Actions from the post list.

### Where does Visibility store per-post overrides?

In standard WordPress post meta (`_native_aeo_pack_*` keys). Term overrides go to
term meta, user social URLs to user meta. Nothing leaves the standard WordPress 
tables.

### How can other plugins or themes detect Visibility’s robots state?

Public helper class methods are available for third-party integrations. Documentation
will be expanded as the public API stabilizes.

## Reviews

![](https://secure.gravatar.com/avatar/b293ae2eada0abc7dba78cfc2563789b870536f7f5d68f4d3605de13ce3e9ef0?
s=60&d=retro&r=g)

### 󠀁[The perfect SEO plugin](https://wordpress.org/support/topic/the-perfect-seo-plugin-4/)󠁿

 [Lidia Marbán](https://profiles.wordpress.org/webvillalba/) chunyo 23, 2026

Perfect SEO plugin for anyone who wants essential SEO features without bloat. Lightweight,
fast, and fully integrated with WordPress core. Includes everything needed for modern
SEO, AEO, and AI visibility.

![](https://secure.gravatar.com/avatar/5b0a1b43796cabd58557441ad319e078e81a1cf7020562e73b1c377da0d5bd37?
s=60&d=retro&r=g)

### 󠀁[Seems to be the new thing](https://wordpress.org/support/topic/seems-to-be-the-new-thing/)󠁿

 [Héctor Tellado](https://profiles.wordpress.org/hectortellado/) chunyo 23, 2026

From what i’ve seen it has a lot already and apparently it plans to be a bigger 
one having pro features from other plugins for free so definitely giving it a try
and prob gonna be my new SEO plugin from now on

 [ Read all 2 reviews ](https://wordpress.org/support/plugin/native-aeo-pack/reviews/)

## Contributors & Developers

“Visibility – Lightweight SEO for Search and AI” is open source software. The following
people have contributed to this plugin.

Contributors

 *   [ Fernando Tellado ](https://profiles.wordpress.org/fernandot/)
 *   [ Ayuda WordPress ](https://profiles.wordpress.org/ayudawp/)

“Visibility – Lightweight SEO for Search and AI” has been translated into 1 locale.
Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/native-aeo-pack/contributors)
for their contributions.

[Translate “Visibility – Lightweight SEO for Search and AI” into your language.](https://translate.wordpress.org/projects/wp-plugins/native-aeo-pack)

### Interested in development?

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

## Changelog

#### 1.7.0

 * New: Site Identity. Visibility adds the Organization or Person and WebSite JSON-
   LD for your site (logo, description, social profiles as sameAs and an optional
   SearchAction for Google’s sitelinks search box), on the home page or a page you
   choose. The WebSite node also points AI agents to your llms.txt, llms-full.txt
   and Markdown endpoints with ReadAction entries. The Article and Person graphs
   reference it, so search engines and AI assistants can identify who is behind 
   the site without a companion plugin.
 * New: llms.txt. Serve a Markdown index of your site at /llms.txt, and optionally/
   llms-full.txt with the full text of each page, for LLMs and AI agents. Built 
   on the fly with no file on disk and no cron, or written as a physical file if
   you prefer. Choose which content types to include and how many per type, restrict
   it to specific taxonomy terms, force individual pages in or out, and exclude 
   URLs by pattern.
 * New: Markdown for agents. Serve a clean Markdown version of any post or page 
   at its URL with a .md suffix (for example /hello-world.md), with a YAML frontmatter
   block, so AI agents can read the content without the page chrome. The same Markdown
   is also returned when a client requests it with an Accept: text/markdown header,
   and it is advertised with both an alternate link tag and a Link header. Taxonomy
   archives (the categories, tags or custom taxonomies you choose) can be served
   as Markdown too.
 * New: robots.txt editor. From the Discover tab, manage the directives Visibility
   adds to your robots.txt: pick exactly which AI crawlers to Disallow from a grouped,
   selectable list (model-training crawlers, and AI search and assistant crawlers),
   add your own rules, and preview the final file live. Served through the native
   robots.txt by default, or written to a physical robots.txt when one shadows the
   virtual file, seeded with the rules WordPress already serves (the core directives
   and the Sitemap line) so nothing is lost and anything already there is preserved.
 * Improved: The settings sections on every tab are now collapsible, with a subtle
   index at the top of each tab to jump between them. Your open or closed preference
   is remembered per browser.

For older changelog entries, please check the [changelog.txt](https://plugins.svn.wordpress.org/native-aeo-pack/trunk/changelog.txt)
file.

## Meta

 *  Version **1.7.0**
 *  Last updated **12 horas ago**
 *  Active installations **30+**
 *  WordPress version ** 6.1 or higher **
 *  Tested up to **7.0**
 *  PHP version ** 7.4 or higher **
 *  Languages
 * [English (US)](https://wordpress.org/plugins/native-aeo-pack/) y [Spanish (Spain)](https://es.wordpress.org/plugins/native-aeo-pack/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/native-aeo-pack)
 * Tags
 * [noindex](https://arg.wordpress.org/plugins/tags/noindex/)[open graph](https://arg.wordpress.org/plugins/tags/open-graph/)
   [schema](https://arg.wordpress.org/plugins/tags/schema/)[seo](https://arg.wordpress.org/plugins/tags/seo/)
   [sitemap](https://arg.wordpress.org/plugins/tags/sitemap/)
 *  [Advanced View](https://arg.wordpress.org/plugins/native-aeo-pack/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  2 5-star reviews     ](https://wordpress.org/support/plugin/native-aeo-pack/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/native-aeo-pack/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/native-aeo-pack/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/native-aeo-pack/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/native-aeo-pack/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/native-aeo-pack/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/native-aeo-pack/reviews/)

## Contributors

 *   [ Fernando Tellado ](https://profiles.wordpress.org/fernandot/)
 *   [ Ayuda WordPress ](https://profiles.wordpress.org/ayudawp/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/native-aeo-pack/)