The best free SEO plugin for WordPress: seven free versions measured
The SEO Framework is the best free WordPress SEO plugin on our measurements: its free version prints a meta description, a canonical, 10 Open Graph and 5 X tags and a 9-type schema graph for +8.0 ms of PHP time and zero extra queries. If you want a fuller sitemap for free, Hydrogen SEO (ours) came second: 72 URLs with all 40 images and lastmod on every one, for +12.9 ms.
Every plugin in our seven-plugin benchmark was tested as its free version at default settings, so every number here is what you get without paying. We build Hydrogen SEO; weigh its placement with that in mind.
How we ranked them
Every plugin here is free to install, so the useful question is what the free version actually does on a default install, and what it costs to run. We weighed:
- Default output: meta description, canonical, social tags, JSON-LD types, and sitemap URLs, images and
lastmodcoverage. - Default traps: anything a free install silently fails to print until you change a setting, register or upgrade.
- Cost: PHP time, queries and custom tables, from the same run.
We did not score pro tiers or prices. What each vendor holds back for paid plans changes often, so check their current pages.
The SEO Framework
+8 ms front-end, +0 queries, 0 custom tables, 9 JSON-LD types
Complete core output for the lowest cost in the field: description, canonical, 10 Open Graph and 5 X tags, and 9 schema types in 1,881 bytes, for +8.0 ms and 0 queries, with no account and nothing to finish first. The free version's gap is the sitemap: a flat 51-URL file without images or taxonomy archives. Some extras arrive through separate extensions.
Hydrogen SEO
+12.9 ms front-end, +1 queries, 0 custom tables, 10 JSON-LD types
Every non-AI feature is free and works with no account: titles and meta with template variables, schema, sitemaps, the robots.txt and llms.txt editors, the redirection manager and site audits. Measured output: 10 schema types in 2,071 bytes and a 72-URL sitemap with 40 images and full
lastmod, for +12.9 ms and 1 query. AI features need a free hydrogenseo.com account and credits. It is Beta software.Slim SEO
+10 ms front-end, +2 queries, 0 custom tables, 10 JSON-LD types
A complete default setup that asks almost nothing of you: 10 schema types, 11 Open Graph tags and a 73-URL sitemap with images, for +10.0 ms and a 1.4 MB package. The free output is thinner in two places: only 2 X tags, and
lastmodmissing on 23 of its 73 sitemap URLs.Yoast SEO
+39 ms front-end, +3 queries, 6 custom tables, 12 JSON-LD types
The most complete free output we measured on schema (12 types) and sitemaps (75 URLs, 40 images, 74 with
lastmod). Two things count against it on a free install: it prints no meta description unless you write one or set a template, and it costs +39.0 ms, six custom tables and 4,160 KB in the editor. Set the description template and it is a strong free choice if your server has room.Rank Math
+36.1 ms front-end, +16 queries, 6 custom tables, 6 JSON-LD types
An unusually generous free tier, the fullest social tags we measured (11 Open Graph, 8 X) and descriptions by default. The trap: the free version prints nothing on the front end until you finish or skip its setup wizard. At defaults its sitemap also left out featured images and tag and author archives. It costs +36.1 ms and +16 queries.
SEOPress
+24.5 ms front-end, +1 queries, 1 custom tables, 0 JSON-LD types
Light for a full-featured plugin (+24.5 ms, 1 query, 217 KB in the editor), with a sitemap that includes images. But the free version printed no JSON-LD at all at defaults, the largest single output gap in the test, so you would pair it with a separate schema tool or its paid version. See SEOPress alternatives.
All in One SEO
+53.5 ms front-end, +22 queries, 9 custom tables, 8 JSON-LD types
Approachable, with a guided setup, a description by default and
lastmodon all 73 sitemap URLs. But the free sitemap had no image entries, its social output was the thinnest of the major plugins (6 Open Graph, 3 X), and it was the most expensive plugin to run: +53.5 ms, +22 queries and nine tables.
What "free" really leaves out
Free versions differ less in price than in what they skip by default. Three kinds of gap showed up in this run: output that is missing until you change a setting (Yoast's description, Rank Math's featured images in the sitemap), output that is gated (Rank Math prints nothing until you register or skip), and output that belongs to a paid tier (SEOPress's schema). None of these are hidden if you look, but most people never check what lands in the page.
The check is the same whichever plugin you pick. After installing, open a post, view source, and look for one <meta name="description">, one canonical and a JSON-LD block. Then open your sitemap and follow it into a child file. Our new WordPress site SEO setup guide walks through it in order.
Free plugins also have a quieter cost after you stop using them: SEOPress and All in One SEO released none of their autoloaded options on deactivation, so those keep loading on every request until you uninstall.
All seven, measured
| Measured | The SEO Framework 5.1.4 | Hydrogen SEO 0.0.18 | Slim SEO 4.10.1 | Yoast SEO 28.4 | Rank Math 1.0.278 | SEOPress 10.2 | All in One SEO 5.0.1.1 |
|---|---|---|---|---|---|---|---|
| Front-end PHP time added | +8 ms | +12.9 ms | +10 ms | +39 ms | +36.1 ms | +24.5 ms | +53.5 ms |
| Peak memory added | +2 MB | +4.5 MB | +2 MB | +10.5 MB | +8.5 MB | +6.5 MB | +14.5 MB |
| Database queries added | +0 | +1 | +2 | +3 | +16 | +1 | +22 |
| Hooks registered | +8 | +22 | +51 | +187 | +155 | +114 | +100 |
<head> bytes added | +3,821 | +4,259 | +1,649 | +5,656 | +4,965 | +2,380 | +6,668 |
| Meta description by default | Yes | Yes | Yes | No | Yes | Yes | Yes |
| JSON-LD types printed | 9 | 10 | 10 | 12 | 6 | 0 | 8 |
| Open Graph / X tags | 10 / 5 | 10 / 5 | 11 / 2 | 10 / 5 | 11 / 8 | 10 / 6 | 6 / 3 |
| Sitemap URLs listed | 51 | 72 | 73 | 75 | 59 | 58 | 73 |
| Sitemap image entries | 0 | 40 | 40 | 40 | 0 | 40 | 0 |
lastmod coverage | 51 / 51 | 72 / 72 | 50 / 73 | 74 / 75 | 59 / 59 | 50 / 58 | 73 / 73 |
| Custom database tables | 0 | 0 | 0 | 6 | 6 | 1 | 9 |
| Autoloaded options added | +4.2 KB | +0.4 KB | -0.2 KB | +13.6 KB | +11.6 KB | +3.6 KB | +14.6 KB |
| Plugin package size | 2.9 MB | 4.6 MB | 1.4 MB | 21 MB | 15.1 MB | 11.7 MB | 24.4 MB |
| Block editor assets | 25 files, 77.6 KB | 2 files, 700.4 KB | 14 files, 187.7 KB | 48 files, 4,160 KB | 24 files, 1,792 KB | 17 files, 217 KB | 130 files, 3,543 KB |
| After deactivation | Releases everything (exact baseline) | +0.2 KB left autoloading | Releases everything | +2.6 KB left autoloading, 6 tables remain | +11.0 KB still autoloading | No reduction at all | No reduction: 14.5 KB still autoloading |
Measured on one WordPress 7.1 install (PHP 8.2, MySQL 8.0, Twenty Twenty-Five, 40 posts), each plugin alone with default settings, against a no-plugin baseline. Bold marks the better number in each row. Full method: how we tested.
Common questions
What is the best free SEO plugin for WordPress?
On our measurements, The SEO Framework: complete core output for +8.0 ms and zero extra queries. Hydrogen SEO came second, with a fuller sitemap and one more schema type for +12.9 ms.
Is the free version of Yoast SEO good enough?
Yes, once you set a meta description template. At defaults it prints no description tag, but it had the richest schema and the most complete sitemap of the seven.
Does Hydrogen SEO need an account?
No. Every non-AI feature works with no account and no key. A free hydrogenseo.com account with free credits is only needed for AI features and the Hydrogen AI agent.
Which free SEO plugins add schema markup?
Six of the seven printed JSON-LD at defaults on a standard post. SEOPress free printed none.