Description
Simplicity SEO Audit scans your WordPress site and gives you a clear SEO health score with specific, actionable recommendations. No technical expertise required — install, scan, and see exactly what needs fixing.
Why 200 pages?
We scan up to 200 pages on purpose — not because we cannot do more.
Each page is fetched as live HTML, exactly as Google sees it: theme output, page builders, WooCommerce templates, resolved SEO plugin meta. That is accurate, but heavy. A full crawl of thousands of pages inside WordPress would slow down or crash most hosting setups.
200 pages is a proportional random sample across your content types. You get a reliable SEO health picture in 1–3 minutes, without putting your server on its knees.
Other audit plugins may claim « unlimited » scans. Often that means reading the database only, not the real page. We chose accuracy over marketing.
What makes this different
- Real rendered HTML, not database-only checks
- Stable scan on normal WordPress hosting (typically 1–3 minutes)
- WooCommerce-aware scoring (products, categories, utility pages excluded)
- Works with Yoast, Rank Math, SEOPress — reads their output, does not replace them
- Honest scope: SEO audit only. No fake « full site crawl » promises.
What it does
- Scans up to 200 pages (posts, pages, products, and taxonomy terms) as a proportional sample — real HTML per page, designed to finish in minutes without overloading your server
- Runs 17 SEO checks across content quality and technical health
- Fetches the actual rendered HTML of each page (like Google sees it), not just the database content
- Gives you a weighted score from 0 to 100 with a letter grade (A to F)
- Shows specific issues with the exact URLs that need attention
- Exports a clean HTML report you can print or share with clients
- Works with WooCommerce, Yoast SEO, Rank Math, SEOPress, and all major page builders
17 SEO Checks
Content Checks (10):
- Title Tag (weight: 8) — Checks every page has a title between 30-60 characters. Flags empty, too short, and too long titles.
- Meta Description (weight: 7) — Checks for meta descriptions between 70-160 characters. Flags missing, too short, and too long descriptions.
- Headings H1 (weight: 6) — Verifies each page has exactly one H1 tag and checks heading hierarchy (no skipping from H1 to H3).
- Image Alt Text (weight: 5) — Counts images missing alt text on each page. Score is the average alt text coverage across all pages.
- Internal Links (weight: 5) — Checks each page has at least one internal link in the content area.
- Thin Content (weight: 4) — Flags pages with fewer than 300 words (posts/pages) or 30 words (taxonomy terms). Supports Greek and all Unicode languages.
- Duplicate Titles (weight: 4) — Finds pages sharing identical title tags.
- Duplicate Descriptions (weight: 4) — Finds pages sharing identical meta descriptions.
- Canonical Tag (weight: 3) — Checks every page has a canonical URL tag.
- OG/Twitter Tags (weight: 3) — Checks for Open Graph and Twitter Card meta tags.
Technical Checks (7):
- SSL/HTTPS (weight: 4) — Verifies the site uses HTTPS.
- XML Sitemap (weight: 3) — Checks for an XML sitemap at standard locations.
- Robots.txt (weight: 3) — Checks for a robots.txt file.
- SEO Plugin (weight: 2) — Detects if Yoast, Rank Math, SEOPress, or another SEO plugin is active.
- Schema Markup (weight: 2) — Checks the homepage for structured data (JSON-LD).
- PHP/WP Version (weight: 2) — Checks for outdated PHP or WordPress versions.
- Permalink Structure (weight: 2) — Verifies pretty permalinks are enabled (not plain ?p=123).
How the Score Works
The scoring engine evaluates your website across 17 comprehensive SEO checks using a realistic 2-pillar architecture:
- Compliance Score (70%): Combines on-page content checks (75% weight) and technical checks (25% weight). Giving on-page content primary weight prevents technical checks from artificially masking serious content deficiencies.
- Site Health Ratio (30%): Measures the true percentage of sampled pages that are completely clean and defect-free.
- Truthful Grade Ceilings: Websites with multiple recurring critical errors or a high ratio of defective pages are prevented from receiving inflated grades (Grade A or B).
Grading scale:
* A = 90-100 (Excellent)
* B = 75-89 (Good)
* C = 60-74 (Needs improvement)
* D = 45-59 (Poor)
* F = 0-44 (Critical issues)
A score of 100 means zero issues found. If any issues exist, the maximum score is 99.
Taxonomy-Aware Scoring
Not all pages are equal. The plugin uses a tiered system for taxonomy terms:
- High priority (full weight): Posts, pages, product categories — these are your main landing pages
- Medium priority (half weight): Tags, product tags, custom taxonomies — supporting pages
- Low priority (info only): Product attributes (e.g., color, size) — filtering pages that typically shouldn’t rank
Low-priority terms are flagged for information but don’t affect your score. This prevents product attributes from unfairly dragging down your SEO score.
Developers can customize tiers with the msa_taxonomy_tier filter.
Rendered HTML Analysis
Unlike most lightweight SEO plugins that only read database content, Simplicity SEO Audit fetches the actual rendered HTML of each page — exactly what Google sees. This means:
- H1 tags added by your theme are detected
- Page builder content (Elementor, Divi, WPBakery) is analyzed
- Shortcode output is included in word counts
- Navigation and footer elements are stripped — only the main content area is analyzed
If a page cannot be fetched (e.g., password-protected), the plugin falls back to the database content.
REST API
The plugin provides a REST API endpoint for external integrations:
GET /wp-json/seo-audit/v1/stats?token=YOUR_TOKEN
The token is auto-generated on activation and stored in the database. The endpoint returns site URL, page counts, audit summary, per-check scores, and pricing tier information. It is read-only and uses timing-safe token comparison.
Privacy
- All scanning happens on your own server — no data is sent automatically
- The REST API is token-protected and read-only
- Scan results are stored in your WordPress database only
- All data is deleted when you uninstall (delete) the plugin
- See « Third-Party Services » below for details on the optional connection to seo.simplicity.gr
Third-Party Services
This plugin connects to seo.simplicity.gr in the following ways:
-
CTA Links: The plugin dashboard includes a « Get the Full Report » link that directs you to seo.simplicity.gr. The link includes your site URL and a locally-generated API token as URL parameters.
-
REST API Endpoint: The plugin registers a REST API endpoint (
/wp-json/seo-audit/v1/stats) that allows seo.simplicity.gr to retrieve your scan summary (score, grade, number of checks, number of issues, and total page count). Access requires a valid API token. No page content, URLs, or personal data is transmitted.
- Service: seo.simplicity.gr
- Provider: Simplicity
- Terms of Service: https://seo.simplicity.gr/terms.html
- Privacy Policy: https://seo.simplicity.gr/privacy-policy.html
Captures d’écran




Installation
- Upload the
simplicity-seo-auditfolder to/wp-content/plugins/ - Activate the plugin through the ‘Plugins’ menu in WordPress
- Go to the « Simplicity SEO Audit » menu item in your admin sidebar
- Click « Scan » and wait for the results (typically 1-3 minutes depending on site size)
Or install via ZIP:
- Go to Plugins > Add New > Upload Plugin
- Choose the
simplicity-seo-audit.zipfile - Click « Install Now » then « Activate »
FAQ
-
How many pages does it scan?
-
Up to 200 pages, proportionally sampled across your content types. If your site has 600 products, 30 pages, and 20 posts, the sample will reflect those proportions.
-
Why does the scan take a few minutes?
-
The plugin fetches the rendered HTML of each page (up to 200 HTTP requests to your own site). This is what makes the results accurate — we see what Google sees. Typical scan time is 1-3 minutes.
-
Does it work with WooCommerce?
-
Yes. Products, product categories, product tags, and product attributes are all supported with appropriate scoring tiers.
-
Does it work with page builders?
-
Yes. Because we fetch the rendered HTML, content from Elementor, Divi, WPBakery, Oxygen, Bricks, and other page builders is fully analyzed.
-
Why is my thin content score different from other SEO plugins?
-
Simplicity SEO Audit counts words in the rendered HTML content area, not just the database post_content. This includes product descriptions, related product sections, and other template-generated content. The word count threshold is 300 for posts/pages and 30 for taxonomy terms.
-
Will uninstalling the plugin leave data behind?
-
No. When you delete (not just deactivate) the plugin, all scan results, tokens, and transients are removed from the database.
-
Can I customize which taxonomies are high/medium/low priority?
-
Yes. Use the
msa_taxonomy_tierfilter:add_filter( 'msa_taxonomy_tier', function( $tier, $taxonomy, $post ) { if ( $taxonomy === 'brand' ) return 'high'; return $tier; }, 10, 3 );
Avis
Contributeurs & développeurs
« Simplicity SEO Audit » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.
ContributeursTraduisez « Simplicity SEO Audit » dans votre langue.
Le développement vous intéresse ?
Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.
Journal
2.0.2
- Fixed content extraction false positives: H1, thin content, internal links, and image alt checks now scan broader page wrappers (not only
.entry-content) - Skip empty
<main>matches, expand narrow containers to include parent page titles, and preserve page-header H1s in body fallback - WooCommerce/product wrappers (
#primary,#content,.entry-summary,.type-product) are preferred before narrow editor blocks - Fixed same-site rendered HTML fetches on Docker, reverse proxies, and port-mapped local installs by retrying via
127.0.0.1loopback with the original Host header
2.0.1
- Enhanced Scoring Engine: calibrated realistic scoring with 75/25 content-to-technical weight split, preventing technical checks from masking content defects
- Site Health Ratio: score now incorporates the percentage of defect-free pages across sampled content
- Fixed Image Alt Text check threshold to ensure pages with missing alt attributes are properly reported
- Fixed Drawer issue mapping to accurately display only affected pages in the collapsible view
- Refined Heading check severity: missing H1 tags remain critical while hierarchy jumps are classified as warnings
- Truthful Grade Caps: enforced realistic quality ceilings preventing sites with recurring critical errors from receiving inflated grades
2.0.0
- Major UI Redesign: modern, high-contrast dashboard with clean card architecture, delicate colored status borders, and glowing shadows
- Real-time Interactive Scanning: batch controller with animated progress indicator and live batch status notifications
- Interactive Status Filtering: filter checks dynamically by Critical Errors, Warnings, and Passed checks directly from the Health Distribution card
- Detailed Page Drawer: collapsible drawer for all affected URLs with direct « Edit in WP » and « View » links
- CSV Spreadsheet Export: one-click CSV export with UTF-8 BOM encoding for full Microsoft Excel compatibility with international characters
- HTML Report Redesign: standalone report matches dashboard aesthetics with soft bordered cards and print-ready layout
- Fixed Permalinks routing: full Apache rewrite support for URL inspection links
- Streamlined WordPress Menu: clean 20×20 crisp icon and single-line « Simplicity SEO » label matching core admin styling
- Enhanced Scoring Engine: calibrated weighted averages aligned with industry standard SEO audit methodologies
1.2.4
- WooCommerce: product thin-content threshold lowered to 120 words (was 300)
- WooCommerce: product title minimum lowered to 15 chars; product tags are info-only
- Exclude cart, checkout, my-account, wishlist and similar utility pages from scoring
- Stronger title suffix stripping (site name + domain, even with extra branding text)
1.2.3
- Exclude theme layout CPTs (ThemeREX cpt_layouts, Impreza page blocks) from scan sampling
- Skip content checks for pages with rendered noindex in the HTML head
- Smarter robots.txt check: only flag Disallow: / under User-agent: *
- Title length checks ignore common site-name suffixes (e.g. » – Site Name »)
- Duplicate title/description issues label Term IDs clearly (not negative post IDs)
1.2.2
- Fix false « Missing meta description » reports when Yoast/Rank Math templates (%%variables%%) are used — now reads the rendered HTML head like search engines do
- Title tag checks and duplicate detection also use rendered page titles when SEO plugin templates are in use
1.2.1
- Plugin Check / review: removed set_time_limit() calls from the scanner
- Plugin Check / review: HTML export loads CSS via wp_enqueue_style() / wp_print_styles(), not echoed style or link tags
- Updated Tested up to: 7.0
1.2.0
- Full internationalization — English default with Greek translation included
- All UI strings are now translatable via standard WordPress i18n
- Added languages/ directory with .pot template and Greek .po/.mo files
- Fixed CORS headers for REST API (moved to rest_pre_serve_request filter)
- Performance: cached site counter results to eliminate duplicate DB queries
- Performance: cached SEO plugin detection per request
- Performance: replaced ORDER BY RAND() with PHP shuffle for faster URL sampling
- Added scan duration notice (« This may take 1–3 minutes… »)
- Fixed singular/plural for « pages need improvement »
- Improved CTA copy and label consistency across dashboard and export
1.1.0
- Added rendered HTML analysis — pages are fetched like a search engine, detecting theme H1s, page builder content, and shortcode output
- Added taxonomy-aware tiered scoring — product attributes get zero penalty, tags half penalty, categories full weight
- Fixed scoring to use ratio-based calculation instead of cumulative penalties — scores now reflect actual percentage of pages with issues
- Fixed Unicode word counting — Greek and other non-Latin languages are now counted correctly
- Added HTML report export button in the dashboard
- Added « X pages need improvement » messages on each check
- Added score cap at 99 when issues exist — 100 means truly perfect
- Fixed admin notices from other plugins overlapping the dashboard
- Added uninstall.php to zip for clean data removal
- Improved content area extraction with semantic HTML selectors (main, article, role= »main »)
- Heading and internal links checks now skip taxonomy terms (theme-generated, not editorial)
- Duplicate detection skips low-priority taxonomy terms
1.0.0
- Initial release
- 17 SEO checks (10 content + 7 technical)
- 4-batch scanning process for up to 200 pages
- Weighted scoring with letter grades
- WooCommerce and taxonomy term support
- REST API with token authentication
- Yoast SEO, Rank Math, and SEOPress integration
- Proportional sampling across content types
- Noindex page filtering
