WordPress SEO plugins compared

78 features across the eight most-used SEO plugins, free vs paid, with data current as of July 2026. Plus real measurements of memory, queries and weight taken on one install, and a separate look at WooCommerce URLs, where the rival isn't an SEO plugin at all.

Which WordPress SEO plugin is best?

It depends on what you want, and it's worth saying plainly. If you need a big all-in-one suite with keyword analysis and content scoring, Yoast and All in One SEO are the obvious choice, and Rank Math has the widest free feature set of the plugins that also sell a paid tier. But if what you want is the SEO, AEO and GEO essentials for free, lightweight, on the WordPress core and with nobody upselling you afterwards, Visibility is the only one that ticks every box, with llms.txt, llms-full.txt, Markdown endpoints, Site Identity JSON-LD and WooCommerce product URLs included, all native and all free.

Visibility now leads the free feature count in this table, and it's only fair to say why: we pick the rows. So the rows where the big suites beat us are in here too, marked ✗ on our column: keyword analysis, readability, rich schema types, a visual schema builder, news and video sitemaps, a 404 monitor and the Abilities API. Check it line by line.

Best free alternatives to Yoast and Rank Math

The plugins most often considered as alternatives are Rank Math, SEOPress, The SEO Framework, SureRank and Slim SEO. The table compares them on titles and meta, schema, sitemaps, redirects, robots, AI, WooCommerce URLs and weight. Two details stand out: Visibility does all of it without creating database tables or cron jobs, and on the AI side it goes further than the rest, with llms.txt, llms-full.txt and Markdown endpoints natively, where Rank Math and SEOPress stop at llms.txt and the others have nothing.

And if what you want is WooCommerce URLs

None of the eight SEO plugins lets you choose how a product URL is built, which is why stores install a specialist plugin for it. Visibility does, so the Premmerce comparison further down is a separate table: the same product URL structures, the product tag base and the automatic 301s, without the premium licence.

Showing 77 features

free paid only ~ partial / limited not available
FeatureVisibilityFreeYoast SEOFreemiumRank MathFreemiumAIOSEOFreemiumSEOPressFreemiumSEO FrameworkFreemiumSureRankFreemiumSlim SEOFreemium
Paid version (from)Free$/€99/yr$8.99/mo$49.50/yr*€49/yr$7/mo~$99/yr*$59/yr
Pricing model & philosophy
Free version on WordPress.org
Whole plugin free, no paid version of itself
No upsell or ads in the dashboard
No data collection or telemetry~~~~
Built on native WordPress APIs~~
No custom database tables
No custom cron jobs~~~
No external server calls~~~~
Titles & metadata
Custom titles & meta descriptions
Templates with dynamic variables~~
Per-post / per-page editing
Per-taxonomy-term editing
Google result (SERP) preview~~
AI Overview preview in the editor
Canonical URL control
Social media
Open Graph (Facebook)
Twitter/X Cards
Default / fallback social image
Per-post social title, description & image~
Social card preview
Structured data (schema)
Basic JSON-LD schema (WebPage, Website)~
Organization or Person (E-E-A-T)
Author expertise fields (knowsAbout, hasCredential)
WebSite JSON-LD with ReadActions for AI agents
Article / BlogPosting~
Breadcrumb schema~
FAQ (FAQPage schema)~
HowTo~~
Visual schema builder
Advanced schema types (Event, Recipe, Course…)~
XML sitemaps
XML sitemap
Exclude by post type, taxonomy, user or entry~~~~~
Exclude a single entry without setting it noindex
Lastmod date on URLs and index
News sitemap
Video sitemap
Image sitemap~~~
HTML sitemap
Indexing & robots
noindex/nofollow control by post type
Robots settings per post and per term
noimageindex & nosnippet directives
noimageindex & nosnippet in bulk by post type and taxonomy~
Covers archives, search, 404, pagination & feeds~~
Visual robots.txt editor
Redirects
Basic 301 redirects~~
Full redirect manager
404 error monitor
Redirect on slug change (native WordPress)
Content analysis
On-page SEO analysis
Readability analysis~
Internal linking suggestions~
AI & answer engines (AEO/GEO)
AI title & meta generation
AI content (article) generation
llms.txt
llms-full.txt (full text)~
Markdown endpoint (.md / Accept header)
IndexNow / instant indexing
AI crawler control / blocking~~~
AEO/GEO focus by design~~~
Exposed to AI agents (Abilities API / MCP)
Content freshness report (stale content)
Diagnostics & data
No traffic-light SEO scoring
Preview of what search engines & AI receive~~~~~~
Site SEO audit / checks~
Webmaster tools verification (Google, Bing, Yandex, Pinterest)~
Config export / import with per-entry data~~~~~~
Google Search Console in the dashboard
WooCommerce URLs
Remove taxonomy base, one taxonomy at a time~~~~
Product URL structure (slug, category, hierarchy)
Automatic 301 from the old product URLs
One-click noindex for duplicate store archives~~~~~~~
Import URL settings from Premmerce
Compatibility & migration
WooCommerce compatible
Product schema on top of WooCommerce's own (GTIN, brand…)
Multilingual compatible (WPML, Polylang…)~
Import / migrate from other SEO plugins
Non-destructive import (your values win)~~~~~~~
Free features (✓)5832453635303331
Paid only (€)015512154710

* promotional first-year price; renewals are higher.

Weight and performance, measured

Memory, database queries, generation time and asset weight for the eight plugins, measured on the same WordPress install, with the same content, activating one at a time.

This section exists because a reader asked for it. The plugin declares its size in every release, and the obvious question was how that size compares with the rest. A declared number is easy to write and hard to check, so the whole test is here, the instrument that took the readings is available to download and the log of every request is a file you can open.

The figures are what each plugin adds to the same install. The baseline is that install with no SEO plugin active, which on a single post sits at 10.83 MB, 58 queries and 25.6 ms, and every row is the difference against it. That is the number that matters when you decide what to put on your site.

Worth saying before someone else does: on front page and single post memory The SEO Framework comes in below Visibility, and Slim SEO takes less room on disk. Visibility wins on the PHP that actually loads on each visit and in the block editor, and it is the only one of the eight that creates no table, no cron event and makes no calls to outside servers.

A single post, as a visitor receives it

PluginMemoryQueriesTimePHP loaded
The SEO Framework 5.1.4+0.13 MB−8+1.2 ms590 KB / 74
Visibility 2.1.1+0.29 MB−6+2.3 ms245 KB / 21
SureRank 1.9.3+0.31 MB+15+12.7 ms921 KB / 114
Slim SEO 4.9.11+0.38 MB+3+4.7 ms257 KB / 105
SEOPress 10.1+0.40 MB+1+5.2 ms1.5 MB / 242
Yoast SEO 28.1+0.85 MB+16+4.3 ms3.0 MB / 547
AIOSEO 4.9.10+2.02 MB+32+22.5 ms2.5 MB / 296
Rank Math 1.0.275+3.85 MB+7+15.1 ms1.5 MB / 241

Median of 10 loads per scenario, logged-out visitor. The negative query counts are real, two of these plugins leave the page with fewer queries than WordPress runs with no SEO plugin at all. The PHP figure is the plugin code the request actually reads, not what it takes on disk.

The block editor, with that post open

PluginMemoryQueriesTimeCSS + JS
The SEO Framework 5.1.4+0.09 MB−10−3.4 ms82 KB
Visibility 2.1.1+0.47 MB−6−0.8 ms68 KB
SureRank 1.9.3+0.98 MB+19+17.2 ms2.1 MB
Slim SEO 4.9.11+0.39 MB+1−4.0 ms187 KB
SEOPress 10.1+1.03 MB+11+6.7 ms289 KB
Yoast SEO 28.1+1.92 MB+32+42.9 ms4.1 MB
AIOSEO 4.9.10+5.23 MB+85+44.0 ms1.2 MB
Rank Math 1.0.275+7.21 MB+32+59.5 ms1.8 MB

Median of 4 editor loads with an administrator session. The CSS + JS column adds up the plugin's own files printed on the editor screen, plus whatever it passes inline.

What it leaves in your install

PluginOn diskTablesSizeCronAutoloaded
The SEO Framework 5.1.42.2 MB003 / 4.9 KB
Visibility 2.1.1971 KB002 / 3.3 KB
SureRank 1.9.319.8 MB012 / 54 B
Slim SEO 4.9.11892 KB002 / 7 B
SEOPress 10.18.3 MB116 KB07 / 4.2 KB
Yoast SEO 28.116.0 MB6304 KB27 / 13.8 KB
AIOSEO 4.9.1016.4 MB9448 KB06 / 17.1 KB
Rank Math 1.0.27511.1 MB264 KB315 / 10.4 KB

Size on disk after installing from WordPress.org. Tables and cron are each plugin's own, with the plugin active. Autoloaded options are read on every request your site serves, including the ones that have nothing to do with SEO.

And what it does in return

Pluginog: tagsJSON-LDCanonicalDescription
The SEO Framework 5.1.410
Visibility 2.1.19
SureRank 1.9.39
Slim SEO 4.9.1111
SEOPress 10.110
Yoast SEO 28.110
AIOSEO 4.9.106
Rank Math 1.0.27511

Counted on the same post. A plugin that emits more has a reason to weigh more, which is why this table sits next to the others. Yoast writes no meta description unless you write it yourself, and SEOPress publishes no JSON-LD with the settings it ships with.

How this was measured+

Environment. WordPress 7.0.2, PHP 8.5.3, MySQL 8.4, GeneratePress 3.6.1, memory_limit of 256M and no external object cache. Local install running Local on macOS, with WooCommerce active plus four small plugins, the same ones in every scenario. Measured on 29 July 2026.

Procedure. Only one SEO plugin active per scenario. Front page and single post requested 10 times as a logged-out visitor, through requests the server makes to itself, discarding a warm-up load first. The block editor opened 4 times with an administrator session, which is the only way to open it. The median is what gets published.

The post. Always the same one: 1,169 words, a hand-written excerpt, a featured image, headings, a list and a Details block. The instrument generates it, so it can be recreated the same way on another install.

State of each plugin. Freshly activated, with factory settings, without touching a single option. Two exceptions are worth telling: Rank Math and SEOPress publish nothing until their installer routines run, and Rank Math emits no tag at all until you finish its setup wizard. That wizard was completed accepting every value it came with, connecting no account and importing nothing from another plugin. No wizard was completed anywhere else because none was needed.

What this does not tell you. It does not tell you what will happen on your site, with your theme, your plugins and your settings. A plugin with more modules switched on will use more than it does here, and one with things switched off will use less. It compares the eight against each other under the same conditions, which is exactly what you cannot do by reading their own pages.

Cross-checked with Query Monitor. The same nine situations measured with Query Monitor active and an administrator session give higher figures for everyone, because Query Monitor stores every query it records and that takes memory. The baseline goes from 10.83 MB and 58 queries to 13.7 MB and 72. The ordering between plugins does not change, which is why the figures above were taken without it.

ScenarioMemoryQueriesTime
No SEO plugin13.7 MB720.08 s
The SEO Framework 5.1.413.7 MB610.07 s
Visibility 2.1.113.9 MB630.05 s
Slim SEO 4.9.1114.0 MB620.08 s
SEOPress 10.114.2 MB650.09 s
SureRank 1.9.314.3 MB870.09 s
Yoast SEO 28.114.9 MB760.09 s
AIOSEO 4.9.1016.0 MB1000.31 s
Rank Math 1.0.27517.6 MB700.10 s

The kit holds the instrument, the aggregated figures and the raw log of all 216 requests, one line each, plus a note on how to repeat the test on your own install.

Visibility vs Premmerce Permalink Manager

The WooCommerce URL comparison the table above can't make, because Premmerce isn't an SEO plugin.

Premmerce Permalink Manager has 50,000+ active installs for one good reason: no generic SEO plugin lets you choose how a product URL is built, and WooCommerce won't build these structures on its own. Visibility does, so if you're running both, this is the row-by-row.

Where Premmerce still wins is in here as well: the SKU slug, the .html suffix and the choice between a flat and a hierarchical category URL.

WooCommerce URLsVisibilityFreePremmerceFreePremmercePro
PriceFreeFreefrom $49.99/yr
Product URL: slug only /my-product/
Product URL: main category + slug
Product URL: full category hierarchy
Category URL without the /product-category/ base
Choose flat or hierarchical category URLs~
Canonical on the duplicate pages these structures create
Product tag URL without the /product-tag/ base
Automatic 301 redirects from the old URLs
Blog category and post tag bases (/category/, /tag/)
Brand and product attribute bases, each on its own
Rewrite-rule cost shown before you save
Product slug replaced by the SKU
.html suffix on product and category URLs
One-click import of your Premmerce setup
Titles, meta, schema, robots, sitemap and redirects too

Free vs Pro split as published on wordpress.org and premmerce.com in July 2026. Visibility detects Premmerce, prevails over it (its permalink filters run last) and imports its URL structure from the Tools tab, whether Premmerce is still active or already switched off.

FAQ

Frequently asked questions

Which WordPress SEO plugin is best?+

It depends on your priorities. On the 78 rows of this table Visibility has the most free features, and among the plugins that also sell a paid tier, Rank Math leads. If you want a big all-in-one suite with keyword analysis and content scoring, Yoast and All in One SEO have it. And if you want the SEO, AEO and GEO essentials for free, lightweight and on the WordPress core, Visibility is the only one with nothing behind a paywall, no database tables and no data sent to third parties.

What's the best free alternative to Yoast?+

Rank Math is the most complete free alternative among the freemium suites, and Visibility matches or beats it on everything except keyword analysis, rich schema types and the 404 monitor, while adding llms.txt, Markdown endpoints and WooCommerce URLs that Rank Math doesn't have. Slim SEO and The SEO Framework are very light too, with a much smaller feature set.

Do I still need Premmerce for my WooCommerce URLs?+

Not since Visibility 2.0. It builds the same three product URL structures, removes the /product-tag/ base and adds the automatic 301 redirects, which are the two things Premmerce keeps for its premium licence, and it also drops the bases Premmerce doesn't cover: blog categories, post tags, brands and product attributes. Its settings import in one click from the Tools tab. What Premmerce still has and Visibility doesn't is the SKU-based product slug and the .html suffix. See the side-by-side table.

What doesn't Visibility do?+

Keyword analysis, readability scoring and traffic lights, on purpose, because that is where most of the weight of the big suites comes from. Also rich schema types that need data your content doesn't provide (Recipe, Event, Product), a visual schema builder, news and video sitemaps, a 404 monitor with logging, AI content generation and a Search Console dashboard. WooCommerce Product schema is deliberately left to WooCommerce, which already emits it, and the Abilities API for AI agents is planned rather than shipped.

Is Visibility really free?+

Yes. There's no Pro version, no features behind a paywall, no upsell banners and no data collection. The whole plugin is free and stays free.

Can it replace my current SEO plugin?+

For most sites, yes: it covers titles, meta descriptions, canonicals, Open Graph, schema, robots, redirect management and sitemap control. It leaves out keyword analysis and content scoring on purpose, so if you rely on those, keep your suite. And don't run two SEO plugins at once, they clash in the head and hurt your SEO.

Which SEO plugin is the lightest?+

Measured on the same install, The SEO Framework and Visibility add the least memory to a page a visitor loads, 0.13 MB and 0.29 MB on top of the same site with no SEO plugin at all, and Visibility reads the least PHP per request, 245 KB against the 2.5 MB of AIOSEO and the 3.1 MB of Yoast. In the block editor both stay under half a megabyte, where Rank Math adds 7.2 MB and AIOSEO 5.2 MB. Visibility is also the only one of the eight that creates no database table, no cron event and makes no external calls. Every figure, the method and the raw data are in the measured section.

How much does each SEO plugin weigh?+

On a single post, over the same install with no SEO plugin: The SEO Framework adds 0.13 MB, Visibility 0.29 MB, SureRank 0.31 MB, Slim SEO 0.38 MB, SEOPress 0.40 MB, Yoast 0.85 MB, AIOSEO 2.02 MB and Rank Math 3.85 MB. Queries move in a different order, with SEOPress adding one and AIOSEO thirty-two, and two of them, Visibility and The SEO Framework, end up below the no-plugin baseline. The block editor is where the gap opens: under 0.5 MB for the lightest, 5.2 MB for AIOSEO and 7.2 MB for Rank Math, which also ships 1.8 MB of CSS and JavaScript into that screen against 68 KB. The measured section has the tables, the method and the instrument that took the readings.

What about AI (AEO and GEO)?+

What AI assistants read is clean metadata and schema, and Visibility is built for SEO, AEO and GEO at once: llms.txt, llms-full.txt, Markdown endpoints, AI crawler control and Site Identity JSON-LD, all native in the Discover tab. On top of that it carries the signals with actual evidence behind them, content freshness, verifiable author expertise and Q&A structure as FAQPage. llms.txt is also free in Rank Math, AIOSEO and SEOPress; the llms-full.txt and the Markdown endpoint on top are only here. For AI crawler analytics and visibility scoring, VigIA extends Visibility on the crawler side.

Is Visibility exposed to AI agents through the Abilities API?+

Not yet, and the row in the table says ✗ for that reason. Yoast, Rank Math and SureRank register abilities today; Visibility doesn't, because doing it would force its minimum WordPress version up to 6.9 and leave about a quarter of all WordPress sites without updates. The reading side for agents is already there through llms.txt, the Markdown endpoints and the ReadAction pointers in Site Identity. The writing side ships when that version gap closes.

Will Visibility add the features it doesn't have yet?+

Only the ones that are truly essential for SEO, and always leaning on native WordPress features. The idea is to stay lean: no bloat, nothing that slows down or overloads your site. If something doesn't help most sites or the core can handle it, it's left out on purpose.

Get found. By search and by AI.

Install Visibility in under a minute. Free, no account, and your data never leaves your site.

Free download →