Key takeaways

  • Good technical SEO services for WordPress websites start with the fixes that can switch off search traffic: indexing settings, robots.txt, sitemaps and redirects.
  • WordPress creates duplicate and thin URLs on its own: attachment pages, tag and date archives, search results and comment pages. Decide what each one should do.
  • WooCommerce filter and sort URLs can waste crawling. Google recommends blocking them in robots.txt if you don’t need them indexed.
  • Speed work comes after indexing work. Don’t lazy-load the main image at the top of the page.
  • Duplicate structured data and title templates are worth fixing, but last.

Technical SEO services for WordPress websites should follow a priority order, and most problems I find on WordPress sites are not exotic. They come from defaults, plugins that overlap and settings nobody has opened since launch. The difficulty is knowing which fix matters most on your site, because a list of 80 audit warnings is no help to a developer with one free afternoon.

I have worked in SEO and digital marketing for more than 16 years, much of it on WordPress, and this is the order I work in. Fixes are ranked by impact and effort: the ones that can stop Google indexing your pages come first, clean-up that rarely moves rankings comes last. Each fix says where to look in WordPress.

If you want to know what a WordPress engagement should include overall, I covered what WordPress SEO services should include separately. This article is the technical list itself.

Technical SEO services for WordPress websites: the 15 fixes ranked

Impact and effort matrix placing the fifteen WordPress fixes into four tiers, from fix today to clean up last
Figure 1. The fifteen fixes placed by impact and effort. Tier 1 is quick and can stop indexing; tier 4 is housekeeping.
# Fix Impact Effort Where in WordPress
1 Search engine visibility and stray noindex Very high Low Settings, Reading; SEO plugin
2 robots.txt that blocks too much Very high Low Physical file in the site root
3 One sitemap, listing only indexable URLs High Low Core or SEO plugin sitemap
4 One canonical host and protocol High Low Settings, General; server redirects
5 Redirect chains and stale redirect rules High Medium Redirect plugin, server config
6 Attachment pages Medium Low Option or SEO plugin setting
7 Thin tag, date and author archives Medium Low SEO plugin settings
8 Internal search result pages Medium Low Theme, SEO plugin
9 WooCommerce filter and sort URLs High (shops) Medium robots.txt, filter plugin
10 Comment pagination URLs Low Low Settings, Discussion
11 Lazy-loaded main image Medium Low Theme, performance plugin
12 Plugin and script weight Medium Medium to high Plugins, page builder
13 Page caching and server response Medium Medium Hosting, caching plugin
14 Duplicate structured data Low Low Theme and SEO plugin output
15 Title and heading templates Low Medium Theme templates

The ratings are my judgement from audit work, not measurements. On a shop, fix 9 moves up the list; on a five-page brochure site it disappears.

Tier 1: fixes that can switch off search traffic

A settings panel with one red toggle and a lever switch cutting the line to search, plus a robots file blocking a folder
One setting or one robots rule can cut a whole WordPress site off from search.

1. The search engine visibility box and stray noindex tags

WordPress.org’s Reading Settings documentation explains that ticking “Discourage search engines from indexing this site” has, since version 5.3, added a robots meta tag with noindex,nofollow to your pages. It adds that “it is up to search engines to honor your request”. I covered how this box survives launches in why WordPress and SEO services work best together, so here is the short version: check it, then check that your SEO plugin isn’t adding noindex to page types you want in Google.

2. robots.txt that blocks too much

The same documentation notes that the setting’s robots.txt behaviour only works when WordPress is installed in the site root and no robots.txt file exists. In other words, a physical file in the root takes over, and whatever is in it is what crawlers read. I still find files left over from development, or ones that block /wp-content/, which is where the theme’s stylesheets, scripts and media library live. Read the file line by line. It should be short.

3. One sitemap, and only indexable URLs in it

Since WordPress 5.5, core exposes a sitemap index at /wp-sitemap.xml covering public post types, taxonomies, author archives and the homepage, with up to 2,000 entries per sitemap by default. Core sitemaps are disabled when the site discourages search engines. Most SEO plugins replace the core sitemap with their own. The problem I see is the leftover: Search Console has both submitted, or the sitemap lists URLs you have set to noindex or redirected. Submit one, and make sure every URL in it returns 200 and is meant to be indexed.

4. One canonical host and protocol

http and https, www and non-www, with and without a trailing slash: each pair should collapse to one version with a single redirect. Check that the WordPress Address and Site Address in Settings, General match the version you want, and that the server redirects the others.

5. Redirect chains and stale redirect rules

Every permalink change, slug edit and redesign adds redirects. Over the years they stack into chains (A to B to C) and loops, often spread across a plugin, .htaccess and the host’s panel at once. Pick one place to manage redirects, collapse chains so each old URL goes straight to its final destination, and update internal links to point at the final URL directly.

Rank Check Reports

After fixing indexing and redirects, check where your key pages rank now, so you have a baseline for the rest of the list.

A live Google check of your keywords on desktop and mobile · from $14.99 per check · no subscription · report within one working day

Order a rank check report →

Tier 2: URLs WordPress creates on its own

Diagram of one WordPress post with the extra URLs WordPress can generate around it: attachment pages, tag, date and author archives, search results and comment pages
Figure 2. One post, many URLs. Each extra URL type needs a decision: keep, noindex, redirect or block.

6. Attachment pages

Every uploaded image can have its own attachment page: a URL with little more than the image on it. WordPress changed this in 6.4. Its developer note on attachment pages says new sites have the option wp_attachment_pages_enabled set to 0, which redirects attachment pages to the file itself, while “On existing sites, the option is set to 1 on upgrade, so that attachment pages continue to work as is.” So an older site still has them unless someone switched them off. Turn them off, or use your SEO plugin’s redirect setting.

7. Thin tag, date and author archives

Tags added freely create hundreds of archives with one or two posts each. Date archives repeat the blog in another order. On a single-author blog, the author archive is a copy of the blog index. Keep the archives that work as real landing pages, noindex or disable the rest, and stop creating one-use tags.

8. Internal search result pages

WordPress search results live at URLs with ?s= in them. They are useful for visitors and useless in Google. Make sure they carry noindex and that nothing on the site links to them as if they were normal pages.

9. WooCommerce filter and sort URLs

Layered filters for colour, size and price, plus sort orders, can produce a near-endless set of URLs. Google’s guide to managing crawling of faceted navigation says crawlers “will typically access a very large number of faceted navigation URLs” before recognising that many are useless, and that this leaves less time for new, useful pages.

Decision tree for WooCommerce filter URLs: if they don't need to be indexed, block them in robots.txt or use URL fragments; if they do, use standard parameters and return 404 for empty combinations
Figure 3. What to do with filter URLs, following Google's faceted navigation guidance.

If you don’t need filter pages indexed, Google recommends disallowing them in robots.txt, or using URL fragments, which “will have no impact on crawling”. If some filtered pages deserve to rank (a category plus one popular attribute, for example), give those a proper page and keep the rest out of crawling. Google also says to use the standard & separator and return a 404 when a filter combination has no results.

Test before you block

Before adding a robots.txt rule for filter parameters, list ten real filter URLs and ten real product and category URLs, and check the rule against all twenty. A rule that is one character too broad can block your categories.

10. Comment pagination URLs

If “Break comments into pages” is ticked in Settings, Discussion, a popular post gets extra URLs for each page of comments. On most sites I untick it. If comments are a real part of the content, keep it and check those pages point their canonical at a sensible URL.

Free tool · Ping My URL

Changed a robots.txt rule or a batch of pages? Let search engines know which URLs were updated.

Notify Google and other search engines about up to 5 new or updated URLs at once. Free, no sign-up.

Ping your URLs →

Tier 3: speed work that comes after indexing

Speed matters, but in my priority order it never beats a page that can’t be indexed. These are the three WordPress-specific fixes I make most.

A page whose main image loads at once while lower images wait, unused plugin blocks faded out, and a speed gauge
Load the main image first and remove plugins you do not use.

11. Don’t lazy-load the main image

WordPress added native lazy loading for images in version 5.5. web.dev’s analysis of lazy loading and LCP found that the WordPress technique “very clearly helps reduce image bytes at the cost of a delayed LCP”, and that sites “may benefit from more eagerly loading images above the fold.” Check your hero or featured image: if a theme, page builder or performance plugin adds loading=”lazy” to it, remove it for that image.

12. Plugin and script weight

The usual pattern is a form plugin, slider, chat widget and page builder each loading their scripts on every page, including the ones that don’t use them. Remove what you don’t use, load the rest only where it is needed, and test the heaviest templates (home, category, product) rather than a simple post.

13. Page caching and server response

Without page caching, WordPress builds every page from the database on each request. A caching plugin or host-level cache and a decent hosting plan fix most slow server responses. Confirm the cache isn’t serving a logged-in or staging version to visitors.

Free tool · SEO ROI Calculator

Before paying for a hosting upgrade or a speed project, estimate what the keywords those pages target are worth.

Enter search volume, CPC and your current ranking to estimate traffic, revenue and value for a keyword. Free.

Calculate your SEO ROI →

Tier 4: clean-up worth doing last

Duplicate markup with one copy switched off, identical title cards turned into distinct ones, and a small broom
Duplicate markup and repeated title templates are housekeeping, done last.

14. Duplicate structured data

Themes and SEO plugins can both output schema markup, so a page ends up describing itself twice, sometimes with different names or dates. Pick one source (usually the SEO plugin), switch off the other and check the output. What a plugin like Yoast does and doesn’t handle is covered in what Yoast SEO does for your rankings.

15. Title and heading templates

Common template issues: every archive page shares the same title, page 2 of a category repeats page 1’s title and description, or the logo is wrapped in an H1 on every page so the real heading is second. These rarely cost rankings on their own. Fix them when the rest is done.

On WordPress, the expensive technical problems are almost always settings and leftovers, not code.

How I work through the list

I start with a crawl and Search Console, mark each of the fifteen as fine, needs work or not relevant, and hand your developer a ranked list with the reason for each item. Tier 1 is usually done in a day. Tiers 2 and 3 depend on the size of the site and how many plugins are involved.

Before you hire anyone for WordPress technical SEO

  • Ask for a ranked list, not a raw tool export.
  • Ask which items need a developer and which are settings you can change yourself.
  • Ask how each fix will be checked after it goes live.
  • Keep admin access in your own name; give the SEO a separate account.

If you want the list worked through for your site, that is what our WordPress SEO audit does. For sites beyond WordPress, or where the problems are in hosting and rendering, see our technical SEO services. I charge by the hour, so a small site with a short list pays for a short job.

FAQ

What are reliable technical SEO services for WordPress sites?

Reliable services give you a ranked list of fixes with the reason for each, say which ones your developer must do, and check each fix after it goes live. They start with indexing and crawling issues before speed or markup. Be wary of anyone who sends a tool’s export with hundreds of warnings and no priorities.

What is WordPress technical SEO?

It is the work of making sure search engines can crawl, index and understand a WordPress site: settings, robots.txt, sitemaps, redirects, duplicate URLs WordPress generates, performance and structured data. It is different from content work, which decides what the pages say.

Do I need a plugin for WordPress sitemaps?

No. WordPress has created a sitemap at /wp-sitemap.xml since version 5.5. Most SEO plugins replace it with their own, which is fine, as long as only one is submitted to Search Console and it lists only pages you want indexed.

Should I turn off WordPress attachment pages?

On most sites, yes. New sites since WordPress 6.4 redirect attachment pages to the file by default, but sites that existed before the upgrade keep them unless someone changes the setting. Your SEO plugin can usually redirect them for you.

How long does a WordPress technical SEO fix list take?

Tier 1 fixes are usually settings and a few files, so they are quick. Archive, filter and speed work takes longer and depends on the site’s size, theme and plugins. A ranked list lets you stop at the point where the remaining items are no longer worth the hours.

If your WordPress site has an audit full of warnings and you don't know which fix comes first, send it to me and I will put it in order.

Eugen Platon · SEO consultant with 16+ years in SEO and digital marketing · free 10-minute first call

Book a free SEO consultation →

Eugen Platon

Eugen Platon

Director of SEO & Web Analytics at onwardSEO
Eugen Platon is a highly experienced SEO expert with 16+ years of experience propelling organizations to the summit of digital popularity. Eugen, who holds a Master's Certification in SEO and is well-known as a digital marketing expert, has a track record of using analytical skills to maximize return on investment through smart SEO operations. His passion is not simply increasing visibility, but also creating meaningful interaction, leads, and conversions via organic search channels. Eugen's knowledge goes far beyond traditional limits, embracing a wide range of businesses where competition is severe and the stakes are great. He has shown remarkable talent in achieving top keyword ranks in the highly competitive industries of gambling, car insurance, and events, demonstrating his ability to traverse the complexities of SEO in markets where every click matters. In addition to his success in these areas, Eugen improved rankings and dominated organic search in competitive niches like "event hire" and "tool hire" industries in the UK market, confirming his status as an SEO expert. His strategic approach and innovative strategies have been successful in these many domains, demonstrating his versatility and adaptability. Eugen's path through the digital marketing landscape has been distinguished by an unwavering pursuit of excellence in some of the most competitive businesses, such as antivirus and internet protection, dating, travel, R&D credits, and stock images. His SEO expertise goes beyond merely obtaining top keyword rankings; it also includes building long-term growth and optimizing visibility in markets where being noticed is key. Eugen's extensive SEO knowledge and experience make him an ideal asset to any project, whether navigating the complexity of the event hiring sector, revolutionizing tool hire business methods, or managing campaigns in online gambling and car insurance. With Eugen in charge of your SEO strategy, expect to see dramatic growth and unprecedented digital success.
Eugen Platon
Check my Online CV page here: Eugen Platon SEO Expert - Online CV.