{"id":359672,"date":"2026-08-30T18:15:18","date_gmt":"2026-08-30T18:15:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/stedica-seo\/"},"modified":"2026-09-16T06:09:39","modified_gmt":"2026-09-16T06:09:39","slug":"stedica-seo","status":"publish","type":"plugin","link":"https:\/\/sa.wordpress.org\/plugins\/stedica-seo\/","author":18317600,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"3.26.2","stable_tag":"3.26.2","tested":"7.1.1","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"Stedica SEO","header_author":"Stedica LLC","header_description":"Audit every page and fix what it finds: meta, schema and social gaps, sitemaps, redirects, hreflang. Works with Yoast, Rank Math, SEOPress, AIOSEO.","assets_banners_color":"121330","last_updated":"2026-09-16 06:09:39","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.stedica.com","header_author_uri":"https:\/\/stedica.com","rating":0,"author_block_rating":0,"active_installs":10,"downloads":634,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"3.22.0":{"tag":"3.22.0","author":"stedica","date":"2026-08-30 18:14:48","revision":3672974},"3.22.1":{"tag":"3.22.1","author":"stedica","date":"2026-08-30 18:52:09","revision":3673034},"3.24.0":{"tag":"3.24.0","author":"stedica","date":"2026-09-04 20:34:38","revision":3681779},"3.24.1":{"tag":"3.24.1","author":"stedica","date":"2026-09-04 21:25:25","revision":3681830},"3.25.1":{"tag":"3.25.1","author":"stedica","date":"2026-09-05 01:49:48","revision":3681968},"3.25.2":{"tag":"3.25.2","author":"stedica","date":"2026-09-05 02:20:10","revision":3681975},"3.25.3":{"tag":"3.25.3","author":"stedica","date":"2026-09-05 02:43:33","revision":3681985},"3.26.1":{"tag":"3.26.1","author":"stedica","date":"2026-09-09 05:06:27","revision":3687591},"3.26.2":{"tag":"3.26.2","author":"stedica","date":"2026-09-16 06:09:39","revision":3697974}},"upgrade_notice":{"3.26.2":"<p>Fixes a sitemap that left out products and other post types on a shop.<\/p>","3.26.1":"<p>All five AI providers&#039; model lists are current again, and cost estimates are accurate.<\/p>","3.26.0":"<p>Settings is reorganised into sections. No setting changed value.<\/p>","3.25.3":"<p>Adds the Manual button to the Redirects screen.<\/p>","3.25.2":"<p>Fixes the Home screen rendering all navy and the admin menu opening behind it.<\/p>","3.25.1":"<p>Fixes settings being silently erased on save, a WP-Cron fatal error, and 485 translations that never reached the browser.<\/p>","3.24.1":"<p>Fixes a fatal error on three Premium screens during a version-mismatch window.<\/p>","3.24.0":"<p>Adds a searchable manual inside the plugin, on every Stedica screen.<\/p>","3.23.0":"<p>A full visual redesign of every Stedica SEO screen. Nothing you have set up changes.<\/p>","3.22.1":"<p>Adds one dismissible request for a WordPress.org review after your third audit.<\/p>","3.22.0":"<p>New: Reports for Premium \u2014 a monthly report that shows what changed and what it earned, with six to twelve months of history.<\/p>","3.21.0":"<p>Free is now fully functional \u2014 every cap and licence gate removed. Also fixes an XSS in product schema.<\/p>","3.20.0":"<p>A table of contents block and shortcode, with stable heading anchors.<\/p>","3.19.0":"<p>Headline analysis as you type, with the reasons shown \u2014 and honest about which parts are only rules of thumb.<\/p>","3.18.0":"<p>An HTML sitemap for visitors, via [stedica_html_sitemap], with the same exclusions as the XML one.<\/p>","3.17.1":"<p>Cornerstone pages are flagged when too few pages link to them, not only when none do.<\/p>","3.17.0":"<p>Mark your most important pages as cornerstone and the audit prioritises their problems accordingly.<\/p>","3.16.0":"<p>Fill missing image alt text from captions, titles and filenames \u2014 free, no AI required.<\/p>","3.15.0":"<p>A Health screen: nine checks covering what is working, what stopped, and where to fix it.<\/p>","3.14.0":"<p>An MCP server so AI assistants can read and improve your SEO, plus a per-page issues endpoint.<\/p>","3.13.0":"<p>A REST API at \/wp-json\/stedica-seo\/v1\/ for audits, issues and per-page SEO fields.<\/p>","3.12.0":"<p>A setup wizard for new installs, including one-click import of your existing SEO data.<\/p>","3.11.0":"<p>SEO work no longer requires an admin account: grant it per role, with Settings and AI Costs still admin-only.<\/p>","3.10.1":"<p>Audit results are now recycled rather than growing forever. Trend history is unaffected.<\/p>","3.10.0":"<p>Multi-location Local SEO: a row per branch, each giving its own page a Local Business entry.<\/p>","3.9.1":"<p>Premium: cleared 18 Plugin Check errors and 4 warnings. No behaviour change.<\/p>","3.9.0":"<p>Internal linking suggestions are now one-click: Stedica writes the link into the other page for you.<\/p>","3.8.6":"<p>Housekeeping only: the full version history moved to changelog.txt so WordPress.org stops truncating it.<\/p>","3.8.5":"<p>Stedica now warns you when the Google connection breaks, rather than quietly pausing Search Console features.<\/p>","3.8.4":"<p>An expired Google connection now says so and self-heals where it can, instead of surfacing as a 401.<\/p>","3.8.3":"<p>Rank tracking now says why a snapshot failed instead of blaming your traffic, and finds the most recent settled day.<\/p>","3.8.2":"<p>Rank Tracking screen, plus an important fix: twenty Settings checkboxes could not be switched off.<\/p>","3.8.1":"<p>Premium: daily keyword rank tracking from Search Console, with history and movement.<\/p>","3.8.0":"<p>Premium: content decay detection \u2014 find the pages that used to earn search traffic and no longer do.<\/p>","3.7.3":"<p>Plugin description updated.<\/p>","3.7.2":"<p>Fixes applied by Stedica can now be undone in one click, including what was written into Yoast, Rank Math, SEOPress or AIOSEO.<\/p>","3.7.1":"<p>Author pages get their own SEO settings, and author credentials are now published as structured data.<\/p>","3.7.0":"<p>Divi, Bricks, Oxygen, Beaver Builder and WPBakery pages are now read correctly. Issue counts will change on sites using them.<\/p>","3.6.11":"<p>Interface consistency: every button, card, panel and field now shares the same 6px corner.<\/p>","3.6.10":"<p>Premium scheduled scans, the weekly digest and broken-link checking now stop when a licence lapses.<\/p>","3.6.9":"<p>Your sitemap address can no longer be claimed by another SEO plugin, and Stedica&#039;s sitemap now takes precedence over any other.<\/p>","3.6.8":"<p>Fixes an XML sitemap that can quietly start returning &quot;not found&quot; after another plugin is installed.<\/p>","3.6.7":"<p>Audit accuracy: duplicates now appear in your issue list, missing descriptions are reported, and false keyword warnings are gone. Issue counts will change after the next scan.<\/p>","3.6.6":"<p>Fixes hreflang narrowing your language targeting, and imports that invented metadata you never wrote.<\/p>","3.6.5":"<p>Pages without a meta description now fall back to your excerpt; social previews fall back to the page text.<\/p>","3.6.4":"<p>Important fix for new installations: redirects could not be saved at all.<\/p>","3.6.3":"<p>Important sitemap fix: robots.txt was pointing search engines at WordPress&#039;s sitemap instead of Stedica&#039;s.<\/p>","3.6.2":"<p>Fixes duplicate og:type on WooCommerce product pages, which could drop the price from shared links.<\/p>","3.6.1":"<p>Important fix for WooCommerce stores using Elementor, Divi, Bricks or Oxygen: product rich results were missing entirely.<\/p>","3.6.0":"<p>WooCommerce product rich results, product Open Graph, and better product descriptions.<\/p>","3.5.0":"<p>hreflang support for WPML and Polylang, including x-default.<\/p>","3.4.0":"<p>One-click import from Yoast, Rank Math, SEOPress and All in One SEO, plus a portable settings file.<\/p>","3.3.0":"<p>Regex redirects and automatic 404 rescue.<\/p>","3.2.0":"<p>Adds \/llms.txt so AI assistants and AI search can understand your site.<\/p>","3.1.1":"<p>Archives now get proper SEO output, and taxonomy terms get their own SEO fields.<\/p>","3.1.0":"<p>The XML sitemap now covers taxonomy, author and date archives.<\/p>","3.0.21":"<p>Plugin header fix required by WordPress.org. No functional change.<\/p>","3.0.20":"<p>IndexNow now ships switched off and asks for consent first. Sites that already enabled it are unaffected.<\/p>","3.0.19":"<p>Housekeeping in the Premium add-on. Nothing in the free plugin changed.<\/p>","3.0.18":"<p>Documentation only. No functional change.<\/p>","3.0.17":"<p>Fixes apostrophes being saved escaped, and completes the WordPress.org standards pass.<\/p>","3.0.16":"<p>Compliance pass for the WordPress.org directory. No change to how the plugin behaves.<\/p>","3.0.15":"<p>The Premium Version link now opens the plans page directly.<\/p>","3.0.14":"<p>Fixes the Premium Version link introduced in 3.0.13.<\/p>","3.0.13":"<p>Fixes the blank Premium Version page.<\/p>","3.0.12":"<p>Stedica SEO is now free, with an optional Stedica SEO Premium upgrade installed alongside it. Existing licences keep every feature. Install or update the free plugin first, then Premium.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3672974,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3672974,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3672974,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3672974,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3672974,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"stedica\/toc":{"name":"stedica\/toc","title":"Table of Contents"}},"tagged_versions":["3.22.0","3.22.1","3.24.0","3.24.1","3.25.1","3.25.2","3.25.3","3.26.1","3.26.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3681778,"resolution":"1","location":"assets","locale":"","width":1280,"height":823},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3681778,"resolution":"2","location":"assets","locale":"","width":1280,"height":759},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3681778,"resolution":"3","location":"assets","locale":"","width":1280,"height":553},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3681778,"resolution":"4","location":"assets","locale":"","width":1280,"height":575},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3681778,"resolution":"5","location":"assets","locale":"","width":1280,"height":818},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3681778,"resolution":"6","location":"assets","locale":"","width":1280,"height":845}},"screenshots":{"1":"Issues \u2014 quick wins first: the pages closest to clean, plus a severity-scored history of every scan.","2":"The dashboard after a scan: pages scanned, issues by severity, and connected services. Search Console, Analytics 4 and the AI providers shown here are Premium features.","3":"Audit \u2014 choose the post types, then scan the pages you already published. Results export to CSV.","4":"The post editor: a live search preview with length-checked title and description, and tabs for social, schema and robots. The badge top right names the metadata source, so the same box edits Yoast, Rank Math, SEOPress or All in One SEO fields when one of those is active.","5":"Redirects \u2014 import existing rules from Redirection, Rank Math or All in One SEO, add exact or regex 301s, and promote a logged 404 to a redirect in one click.","6":"Settings \u2014 breadcrumb schema, the redirect engine, XML sitemaps and the rest, each opt-in. \"Move in from another SEO plugin\" copies metadata across without modifying or removing the other plugin."}},"plugin_section":[262246],"plugin_tags":[726,1117,186,1557,1121],"plugin_category":[55],"plugin_contributors":[278380],"plugin_business_model":[],"class_list":["post-359672","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-redirects","plugin_tags-schema","plugin_tags-seo","plugin_tags-sitemap","plugin_tags-structured-data","plugin_category-seo-and-marketing","plugin_contributors-stedica","plugin_committers-stedica"],"banners":{"banner":"https:\/\/ps.w.org\/stedica-seo\/assets\/banner-772x250.png?rev=3672974","banner_2x":"https:\/\/ps.w.org\/stedica-seo\/assets\/banner-1544x500.png?rev=3672974","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/stedica-seo\/assets\/icon.svg?rev=3672974","icon":"https:\/\/ps.w.org\/stedica-seo\/assets\/icon.svg?rev=3672974","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/stedica-seo\/assets\/screenshot-1.png?rev=3681778","caption":"Issues \u2014 quick wins first: the pages closest to clean, plus a severity-scored history of every scan."},{"src":"https:\/\/ps.w.org\/stedica-seo\/assets\/screenshot-2.png?rev=3681778","caption":"The dashboard after a scan: pages scanned, issues by severity, and connected services. Search Console, Analytics 4 and the AI providers shown here are Premium features."},{"src":"https:\/\/ps.w.org\/stedica-seo\/assets\/screenshot-3.png?rev=3681778","caption":"Audit \u2014 choose the post types, then scan the pages you already published. Results export to CSV."},{"src":"https:\/\/ps.w.org\/stedica-seo\/assets\/screenshot-4.png?rev=3681778","caption":"The post editor: a live search preview with length-checked title and description, and tabs for social, schema and robots. The badge top right names the metadata source, so the same box edits Yoast, Rank Math, SEOPress or All in One SEO fields when one of those is active."},{"src":"https:\/\/ps.w.org\/stedica-seo\/assets\/screenshot-5.png?rev=3681778","caption":"Redirects \u2014 import existing rules from Redirection, Rank Math or All in One SEO, add exact or regex 301s, and promote a logged 404 to a redirect in one click."},{"src":"https:\/\/ps.w.org\/stedica-seo\/assets\/screenshot-6.png?rev=3681778","caption":"Settings \u2014 breadcrumb schema, the redirect engine, XML sitemaps and the rest, each opt-in. \"Move in from another SEO plugin\" copies metadata across without modifying or removing the other plugin."}],"raw_content":"<!--section=description-->\n<p>Most SEO plugins help you optimise a post while you are writing it. Stedica SEO starts from the other end: it audits the pages you already published, scores every issue by severity, and gives you one screen to work through them.<\/p>\n\n<p>It is also built to be installed <em>alongside<\/em> whatever SEO plugin you already use. Stedica reads and writes Yoast, Rank Math, SEOPress and All in One SEO metadata, so you can run an audit today without migrating anything or losing what you have.<\/p>\n\n<p><strong>What the free edition does<\/strong><\/p>\n\n<ul>\n<li><strong>Site audit<\/strong> \u2014 scans every URL on the site and groups every issue by severity: Critical, High, Medium, Low.<\/li>\n<li><strong>Titles and meta descriptions<\/strong> \u2014 edit inline, with length guidance, a live Google preview, and templates with dynamic variables such as <code>#current_year<\/code>.<\/li>\n<li><strong>Canonical URLs and meta robots<\/strong> \u2014 per-post noindex, nofollow, noarchive and nosnippet, merged correctly into WordPress' own robots output.<\/li>\n<li><strong>Open Graph and Twitter Cards<\/strong> \u2014 per-post social metadata with an image picker.<\/li>\n<li><strong>Core structured data<\/strong> \u2014 Organization, WebSite, WebPage and BreadcrumbList JSON-LD.<\/li>\n<li><strong>Breadcrumbs<\/strong> \u2014 BreadcrumbList schema on singular views.<\/li>\n<li><strong>XML sitemap<\/strong> \u2014 paginated, cached and image-aware, with robots.txt integration.<\/li>\n<li><strong>robots.txt editor<\/strong> \u2014 override the virtual robots.txt, with your sitemap appended automatically.<\/li>\n<li><strong>IndexNow<\/strong> \u2014 submit new and updated URLs to Bing, Yandex, Seznam and Naver.<\/li>\n<li><strong>Redirects<\/strong> \u2014 unlimited rules (301, 302, 307, 410) plus a 404 log.<\/li>\n<li><strong>Image alt text<\/strong> \u2014 find every image missing alt text and fix it.<\/li>\n<li><strong>Readability<\/strong> \u2014 Flesch Reading Ease, shown right in the editor.<\/li>\n<li><strong>CSV export<\/strong> \u2014 take the full issue list anywhere.<\/li>\n<li><strong>Elementor compatible<\/strong> \u2014 reads content, headings and images from Elementor's own data, which a plain <code>post_content<\/code> read misses.<\/li>\n<li><strong>Works with your existing SEO plugin<\/strong> \u2014 reads and writes Yoast, Rank Math, SEOPress and AIOSEO fields.<\/li>\n<li><strong>Translation ready<\/strong> \u2014 every string in the interface is translatable, with translations delivered through translate.wordpress.org.<\/li>\n<li><strong>Headline analysis<\/strong> \u2014 length, keyword placement and structure scored as you type.<\/li>\n<li><strong>HTML sitemap<\/strong> \u2014 <code>[stedica_html_sitemap]<\/code>, nested and cached.<\/li>\n<li><strong>Table of contents<\/strong> \u2014 a block, or <code>[stedica_toc]<\/code>, with stable heading anchors.<\/li>\n<li><strong>Cornerstone content<\/strong> \u2014 mark your important pages and their problems are scored higher.<\/li>\n<li><strong>hreflang<\/strong> \u2014 for multilingual sites, Polylang and WPML aware.<\/li>\n<li><strong>llms.txt<\/strong> \u2014 a machine-readable summary of your site for AI crawlers.<\/li>\n<li><strong>Orphan and under-linked pages<\/strong> \u2014 every page with no inbound internal links, found during the audit.<\/li>\n<li><strong>Keyword cannibalisation<\/strong> \u2014 your own pages competing for the same term.<\/li>\n<li><strong>Quick wins<\/strong> \u2014 the pages one or two fixes away from being clean.<\/li>\n<li><strong>Fix Mode<\/strong> \u2014 work through issues one at a time, approve suggestions and apply them in bulk.<\/li>\n<li><strong>Schema editor<\/strong> \u2014 validate your JSON-LD and edit individual <code>@graph<\/code> nodes by hand.<\/li>\n<li><strong>Broken link scan<\/strong> \u2014 check outbound links on demand.<\/li>\n<li><strong>Undo<\/strong> \u2014 every write the plugin makes to a post is reversible.<\/li>\n<li><strong>SEO permission<\/strong> \u2014 let a contractor do SEO without an administrator account.<\/li>\n<li><strong>REST API<\/strong> \u2014 <code>\/wp-json\/stedica-seo\/v1\/<\/code> for audits, issues and per-page SEO fields.<\/li>\n<li><strong>Health screen<\/strong> \u2014 what is working, and what quietly stopped.<\/li>\n<li><strong>Setup wizard<\/strong> \u2014 four questions on first install.<\/li>\n<\/ul>\n\n<p><strong>Stedica SEO Premium<\/strong><\/p>\n\n<p>Premium is a separate plugin that installs alongside this one and both stay active \u2014 you will see two rows in your plugins list, the same way Yoast Premium and SEOPress PRO work. Keep this plugin installed; Premium needs it and adds to it. It adds the parts that need automation, an external API, or work across your whole site at once:<\/p>\n\n<ul>\n<li>AI meta titles, descriptions, alt text, schema, FAQ blocks and content briefs \u2014 using your own API key with OpenAI, Anthropic, Google Gemini, Mistral or Groq, with a screen that tracks tokens and estimated spend.<\/li>\n<li>Scheduled scans, and scan and weekly digest emails.<\/li>\n<li>Google Search Console \u2014 indexing status, impressions, clicks, average position, and per-URL indexing requests.<\/li>\n<li>Google Analytics 4 organic sessions.<\/li>\n<li>Core Web Vitals (LCP, INP, CLS) via PageSpeed Insights.<\/li>\n<li>Redirect importers for Redirection, Yoast Premium, Rank Math, AIOSEO, SEOPress and Safe Redirect Manager.<\/li>\n<li>Scheduled broken-link checking on a cron, rather than on demand.<\/li>\n<li>Internal linking suggestions, with one-click insertion into the donor page.<\/li>\n<li>AI schema generation, including FAQ and HowTo blocks.<\/li>\n<li>Multi-location Local SEO \u2014 a LocalBusiness entry per branch, with address geocoding.<\/li>\n<li>Keyword rank tracking \u2014 daily positions from Search Console, with biggest movers.<\/li>\n<li>Content decay \u2014 pages whose impressions have fallen away since an earlier audit.<\/li>\n<li>Multisite support.<\/li>\n<\/ul>\n\n<p>Details at <a href=\"https:\/\/stedica.com\/\">stedica.com<\/a>.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin can connect to third-party services. All of them are optional and only used when you explicitly enable and configure them in Settings.<\/p>\n\n<p><strong>Google Search Console \/ Google Analytics 4<\/strong> \u2014 When connected, the plugin sends your site URL and individual page URLs to Google in order to retrieve indexing status and traffic metrics. Requires you to authorise access via Google OAuth.\nTerms: https:\/\/policies.google.com\/terms \u2014 Privacy: https:\/\/policies.google.com\/privacy<\/p>\n\n<p><strong>Google PageSpeed Insights<\/strong> \u2014 When you request Core Web Vitals for a page, that page's URL is sent to Google.\nTerms: https:\/\/policies.google.com\/terms \u2014 Privacy: https:\/\/policies.google.com\/privacy<\/p>\n\n<p><strong>AI providers (OpenAI, Google Gemini, or Anthropic \u2014 whichever you configure)<\/strong> \u2014 When you use an AI feature (meta generation, alt text, schema generation, content briefs), the plugin sends the relevant page's title, URL, meta description, focus keyword and an excerpt of its text content to the provider you selected, using the API key you supply. No data is sent unless AI is enabled in Settings and a key is present.\nOpenAI: https:\/\/openai.com\/policies\/terms-of-use \u2014 https:\/\/openai.com\/policies\/privacy-policy\nGoogle Gemini: https:\/\/ai.google.dev\/terms \u2014 https:\/\/policies.google.com\/privacy\nAnthropic: https:\/\/www.anthropic.com\/legal\/consumer-terms \u2014 https:\/\/www.anthropic.com\/legal\/privacy<\/p>\n\n<p><strong>IndexNow (Bing, Yandex, Seznam, Naver)<\/strong> \u2014 <strong>Off by default.<\/strong> If you tick the IndexNow box in Settings, the URL of each post you publish or update is sent to <code>https:\/\/api.indexnow.org\/indexnow<\/code>, which passes it to those search engines so they can recrawl it. Only the URL is sent \u2014 no page content, no personal data, and nothing about your visitors. Nothing is transmitted until you enable it, and unticking the box stops it immediately.\nService: https:\/\/www.indexnow.org\/\nTerms of use: https:\/\/www.indexnow.org\/terms\nPrivacy policy: https:\/\/privacy.microsoft.com\/privacystatement<\/p>\n\n<p><strong>OpenStreetMap \/ Nominatim (Premium \u2014 Local SEO only)<\/strong> \u2014 When you click <em>Find coordinates<\/em> on the Local SEO settings, the business address you typed is sent to <code>https:\/\/nominatim.openstreetmap.org\/search<\/code> to look up its latitude and longitude. It runs only on that click, and the request identifies itself with the plugin name, version and your site URL as Nominatim's usage policy requires.\nTerms: https:\/\/operations.osmfoundation.org\/policies\/nominatim\/ \u2014 Privacy: https:\/\/wiki.osmfoundation.org\/wiki\/Privacy_Policy<\/p>\n\n<p><strong>Freemius (licensing, updates and optional usage data)<\/strong> \u2014 Freemius handles Premium licence checks and updates. The free plugin ships with tracking switched off: the SDK runs in anonymous mode, so no site or user data is sent unless you accept its opt-in notice, which you can dismiss or decline and still use every feature.\nTerms: https:\/\/freemius.com\/terms\/ \u2014 Privacy: https:\/\/freemius.com\/privacy\/<\/p>\n\n<p>If your site serves visitors in the EU, disclose any AI provider you enable in your own privacy policy, since page content is transmitted to that provider.<\/p>\n\n<p>Note that in the free edition the AI providers, Search Console, Analytics and PageSpeed integrations are not present in the package at all, so nothing is sent to any of them.<\/p>\n\n<h3>Licence<\/h3>\n\n<p>Stedica SEO is licensed <strong>GPL-2.0-or-later<\/strong>. A copy of the GPL v2 ships in <code>LICENSE<\/code>.<\/p>\n\n<p>The plugin bundles the Freemius WordPress SDK (<code>vendor\/freemius\/<\/code>), which is licensed <strong>GPL-3.0<\/strong>; its own licence text is in <code>vendor\/freemius\/LICENSE.txt<\/code>. Because Stedica SEO is offered under GPL v2 <em>or later<\/em>, the two are compatible, and the combined distribution you receive is effectively governed by GPL v3. This is noted here so the presence of two different GPL versions in the package is not mistaken for an oversight.<\/p>\n\n<p>Third-party components and their licences:<\/p>\n\n<ul>\n<li>Freemius WordPress SDK \u2014 GPL-3.0 \u2014 https:\/\/github.com\/Freemius\/wordpress-sdk<\/li>\n<li>Chart.js (<code>assets\/js\/chart.umd.min.js<\/code>) \u2014 MIT \u2014 https:\/\/www.chartjs.org\/<\/li>\n<\/ul>\n\n<p>Everything else in this package is Copyright \u00a9 2026 Stedica LLC.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>stedica-seo<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install the ZIP via <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu.<\/li>\n<li>Go to <strong>Stedica SEO \u2192 Settings<\/strong> to set your title and description lengths.<\/li>\n<li>Go to <strong>Stedica SEO \u2192 Audit<\/strong> and run your first scan.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20have%20to%20remove%20yoast%20%2F%20rank%20math%20%2F%20seopress%20%2F%20aioseo%3F\"><h3>Do I have to remove Yoast \/ Rank Math \/ SEOPress \/ AIOSEO?<\/h3><\/dt>\n<dd><p>No. Stedica detects the active SEO plugin and reads and writes its metadata fields, so both stay in sync.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20elementor%3F\"><h3>Does it work with Elementor?<\/h3><\/dt>\n<dd><p>Yes. Content, H1 detection, word count, readability and image alt scanning all read Elementor's stored page data, which a normal <code>post_content<\/code> read would miss.<\/p><\/dd>\n<dt id=\"is%20ai%20required%3F\"><h3>Is AI required?<\/h3><\/dt>\n<dd><p>No. Every AI feature is optional and off until you add your own API key. Without it the plugin still audits, scores, and lets you edit everything manually.<\/p><\/dd>\n<dt id=\"who%20pays%20for%20the%20ai%20calls%3F\"><h3>Who pays for the AI calls?<\/h3><\/dt>\n<dd><p>You do, directly to whichever provider you configure, using your own API key. The <strong>AI Costs<\/strong> page tracks token usage and estimated spend.<\/p><\/dd>\n<dt id=\"what%20languages%20is%20stedica%20available%20in%3F\"><h3>What languages is Stedica available in?<\/h3><\/dt>\n<dd><p>The interface is written in English and is fully translatable \u2014 every string, including the screens drawn in the browser by JavaScript. Translations are hosted on translate.wordpress.org and WordPress installs them for you when you set your site language, so nothing ships inside the plugin.<\/p><\/dd>\n<dt id=\"can%20i%20translate%20stedica%20into%20another%20language%3F\"><h3>Can I translate Stedica into another language?<\/h3><\/dt>\n<dd><p>Yes, and the best place to do it is <a href=\"https:\/\/translate.wordpress.org\/projects\/wp-plugins\/stedica-seo\/\">https:\/\/translate.wordpress.org\/projects\/wp-plugins\/stedica-seo\/<\/a>. Translating there means your work is reviewed by the WordPress polyglots community, shipped to every site through the normal translation updates, and never lost on a plugin update. A <code>languages\/stedica-seo.pot<\/code> template also ships with the plugin; its header explains which strings must be left in English (product names, Schema.org types, and values the plugin stores internally) and how the <code>%s<\/code>\/<code>%d<\/code> placeholders work.<\/p>\n\n<p>If you would rather work offline first, copy the template to <code>stedica-seo-{your_locale}.po<\/code> and translate it in a tool like Poedit, then import the result at translate.wordpress.org. Always validate with <code>msgfmt --check<\/code> before importing \u2014 it catches the placeholder mistakes that would otherwise break the plugin in your language only.<\/p>\n\n<p>A translation you keep locally belongs in <code>wp-content\/languages\/plugins\/<\/code>, which survives plugin updates; WordPress prefers a translation found there.<\/p><\/dd>\n<dt id=\"will%20it%20slow%20down%20my%20site%3F\"><h3>Will it slow down my site?<\/h3><\/dt>\n<dd><p>Front-end work is minimal: the plugin outputs meta tags on singular pages and does one indexed lookup for redirects. Scanning and AI calls happen in the admin area or on a schedule, never during a visitor's page load.<\/p><\/dd>\n<dt id=\"how%20do%20i%20upgrade%20to%20premium%3F\"><h3>How do I upgrade to Premium?<\/h3><\/dt>\n<dd><p>From <strong>Stedica SEO \u2192 Upgrade<\/strong> inside your dashboard. There is a 7-day trial and it does not ask for a card. Stedica SEO Premium installs alongside this plugin rather than replacing it \u2014 keep this one active \u2014 and nothing in your data changes.<\/p><\/dd>\n<dt id=\"is%20premium%20a%20separate%20plugin%2C%20or%20does%20it%20replace%20this%20one%3F\"><h3>Is Premium a separate plugin, or does it replace this one?<\/h3><\/dt>\n<dd><p>Separate. Stedica SEO Premium installs alongside Stedica SEO and both stay active \u2014 two rows in your plugins list. Premium contains only the paid features and uses this plugin's code, so it cannot run without it. WordPress enforces that for you: it will not activate Premium without Stedica SEO, and will not let you deactivate Stedica SEO while Premium is active.<\/p><\/dd>\n<dt id=\"do%20i%20have%20to%20reconfigure%20anything%20after%20upgrading%3F\"><h3>Do I have to reconfigure anything after upgrading?<\/h3><\/dt>\n<dd><p>No. Your settings, scans, redirects and every meta description you have written stay exactly as they are \u2014 Premium reads the same data this plugin already wrote. If you later cancel, deactivating Premium leaves all of it untouched; only the paid features stop.<\/p><\/dd>\n<dt id=\"what%20is%20the%20difference%20between%20the%20free%20version%20and%20premium%3F\"><h3>What is the difference between the free version and Premium?<\/h3><\/dt>\n<dd><p>The free edition is complete. It audits every URL on your site, stores as many redirects as you need, and everything it does it does fully \u2014 nothing is capped, watermarked or half-written. Stedica SEO Premium is a separate add-on that adds capability this plugin does not contain: AI writing, Google Search Console and Analytics, Core Web Vitals, keyword rank tracking, content decay detection, scheduled auditing, the redirect importers and the broken link checker.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20my%20redirects%20if%20my%20licence%20lapses%3F\"><h3>What happens to my redirects if my licence lapses?<\/h3><\/dt>\n<dd><p>Nothing. Redirects are part of this free plugin and there is no limit on them, so every rule you created keeps working and you can still add, edit, disable and delete them exactly as before. A lapsed licence only stops the separate Premium add-on from updating.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<p>The full history is in <code>changelog.txt<\/code>, which ships with the plugin.<\/p>\n\n<h4>3.26.2<\/h4>\n\n<ul>\n<li><strong>Fixes a sitemap that left out most of the site on a shop.<\/strong> A WooCommerce store was publishing a sitemap of its pages and nothing else \u2014 no products, and no product category or tag archives either. Three separate faults caused it, and all three are fixed.<\/li>\n<li>The sitemap was reading \"Post Types to Scan\" from General to decide what to list. That setting answers what the audit should analyse, which is a different question from what a search engine should be told about, and it ships as Posts and Pages only. The sitemap now lists every public post type in its own right, and a new <strong>Content to list<\/strong> control under Crawling &amp; Indexing lets you untick any you would rather leave out. Because it records what you exclude rather than what you include, a post type added later by another plugin is covered without coming back to this screen.<\/li>\n<li>The sitemap was being built before any plugin had registered a post type. It was served on <code>init<\/code> at priority 1, and post types are registered on <code>init<\/code> at priority 10 \u2014 WooCommerce included \u2014 so products could not be seen no matter what the settings said. This alone kept products out even once the setting above was corrected.<\/li>\n<li>Cart, checkout and account pages are no longer listed. They are ordinary published pages, so a store's sitemap was offering them to Google alongside real content. The shop page is still listed \u2014 that one is the catalogue landing page.<\/li>\n<li>Taxonomy archives follow the post types they belong to, so a shop's product categories and tags now appear as well.<\/li>\n<\/ul>\n\n<h4>3.26.1<\/h4>\n\n<ul>\n<li>Every AI provider's model list is current again. The lists were written into the plugin and last touched in 2024, so by now they offered models the providers had retired \u2014 including the default for Anthropic, which meant a site using Claude on a current key got an API error rather than a suggestion. OpenAI, Anthropic, Google, Mistral and Groq all now list the models they actually serve today.<\/li>\n<li><strong>Refresh models now works for every provider, not just Google.<\/strong> All five publish a model list; only Google's was ever wired up, which is why the other four went stale. The button reads the list from your own account, so a model the provider retires drops off on its own without waiting for a plugin update.<\/li>\n<li>If your saved model is one that has since been retired, the Model dropdown now says so instead of quietly displaying a different model than the one being used.<\/li>\n<li>Cost estimates no longer invent spend. A model missing from the price table was priced at GPT-4o's rate \u2014 up to fifty times the real cost of a cheap current model \u2014 with nothing marking the figure as a guess. Prices for every listed model are updated, and models you may have used in the past keep their old rates so your cost history stays accurate.<\/li>\n<\/ul>\n\n<h4>3.26.0<\/h4>\n\n<ul>\n<li>Settings is now a list of sections with one panel open at a time, instead of one long page you scrolled through hunting for a heading. Thirteen sections, the section you were last in opens when you come back, and each one has its own address so you can link straight to it.<\/li>\n<li>Settings that belong together are now together. The importer and the settings file were buried inside the XML Sitemap row and are in General, beside the SEO plugin they read from. The sitemap, its submission to Google, IndexNow, robots.txt, llms.txt and hreflang are one Crawling &amp; Indexing section. Redirects, the 404 rescue and the broken link checker are one Redirects &amp; Links section. Breadcrumb and author schema sit with the rest of the schema settings, beside the live preview that shows them.<\/li>\n<li>Nothing was removed and no setting changed its value. Save still saves the whole screen rather than the section on show, and the Save button stays with you as the page scrolls.<\/li>\n<\/ul>","raw_excerpt":"Audit every page and fix what it finds: meta, schema and social gaps, sitemaps, redirects, hreflang. Works with Yoast, Rank Math, SEOPress, AIOSEO.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/359672","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=359672"}],"author":[{"embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/stedica"}],"wp:attachment":[{"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=359672"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=359672"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=359672"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=359672"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=359672"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/sa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=359672"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}