WordPress SEO Services
WordPress will do anything you ask, including things that quietly harm your rankings. Most WordPress SEO work is subtraction — removing the plugins, archives and page-builder markup that accumulated over years.
Request this serviceWordPress indexes far more than you think
Out of the box, WordPress creates an archive page for every category, every tag, every author and every date. A site with 200 posts and enthusiastic tagging can present well over a thousand URLs, most of them lists of the same content in different orders.
None of that is inherently bad. It becomes bad when nobody decided which of those archives should exist. Tag archives with one post each, author archives on a single-author site, and date archives nobody has ever clicked are all pure crawl waste, and they compete with the pages you care about.
The first thing we do on a WordPress audit is establish what is indexed versus what you would choose to index. The gap is usually large.
Page builders and what they cost
Elementor, Divi, WPBakery and the rest let non-developers build pages, which
is a genuine benefit. They also emit deeply nested markup, load CSS and
JavaScript for components the page does not use, and frequently produce
heading structures where the visual hierarchy and the actual
<h1>–<h3> order disagree.
We are not going to tell you to rebuild your site. We will tell you which specific pages are being held back by their markup, and whether the fix is a setting, a template change, or leaving it alone because it is ranking fine.
Plugin archaeology
The average WordPress site we audit runs between 20 and 40 plugins, several abandoned by their authors, at least two doing the same job, and usually one injecting a redirect chain nobody remembers creating. Every one adds queries, requests and attack surface.
The audit produces a plugin-by-plugin position: keep, replace, remove, with the reason. We do not remove anything without telling you what it currently does.
What we do
- Indexation audit — what is indexed against what should be
- Taxonomy decisions: which categories, tags and archives earn their place
- Permalink structure review, and safe migration if it must change
- Plugin audit with a keep/replace/remove position on each
- Page builder impact assessment on your actual templates
- Core Web Vitals work: render-blocking assets, image handling, caching
- Schema implementation that does not depend on a plugin you may drop
- Internal linking between posts and commercial pages
On changing permalinks
It is the change clients ask for most and the one we resist hardest. Changing your URL structure means redirecting every existing URL, and every redirect is a chance to lose something. We only recommend it when the current structure is actively causing a problem — not because a tidier structure would be nicer.
When it is genuinely necessary, it is a planned migration with a full URL map, redirects tested before launch, and monitoring afterwards. Not a setting someone changes on a Friday.
WooCommerce
If you are running WooCommerce, the shop side is closer to our e-commerce SEO work than to standard WordPress: product and category structure, faceted navigation, and stock handling all behave differently. We cover both in one engagement rather than treating them as separate projects.
Two WooCommerce-specific issues come up almost every time. Product attributes generate their own archive pages, which are usually thin and rarely worth indexing. And out-of-stock products often get deleted, returning 404s for URLs that had ranked and earned links — keeping the page live with clear stock status, or redirecting to the closest equivalent, retains far more than deletion does.
If your site has been hacked
Compromised WordPress sites are common enough to deserve their own note, because the SEO damage outlasts the clean-up. Injected spam pages get indexed, sometimes in their thousands. Redirects are inserted that only fire for search engine crawlers or mobile users, so the site looks fine when you check it.
Cleaning the infection is step one and does not fix the search problem. The indexed spam URLs need removing, the injected content needs to stop returning 200, and if a manual action was applied it needs a reconsideration request that explains what happened and what changed. We can do the search-side recovery alongside whoever handles the security clean-up.
Content structure, not just settings
Most WordPress SEO advice stops at configuration. The larger gains are usually structural: a site with 300 posts and no organising principle competes with itself, because five posts half-cover the same subject and none of them covers it well.
Consolidating those into one authoritative page, with 301s from the others, routinely outperforms any plugin setting. It also reduces the site to something a person can navigate, which is the same problem search engines are solving.
What we need from you
Search Console and analytics access for the audit, plus a WordPress account with enough rights to see the plugin list and theme. Implementation can be ours or your developer's. We work on staging wherever one exists, and where it does not, that is usually the first recommendation.
WordPress SEO questions
Which SEO plugin should we use?
Yoast, Rank Math and SEO Framework all do the job. The plugin is rarely what is holding a site back — how it is configured usually is. We will work with whichever you already have rather than charge you to switch.
Will you touch our site directly?
Only with your agreement, and never on production without a backup and a rollback plan. Most clients prefer we specify and their developer implements.
Our site is slow. Is that an SEO problem?
Sometimes. Speed is a ranking factor but a weak one compared with relevance and authority. It matters far more for conversion. We will tell you honestly whether speed is your ranking problem or a separate issue worth fixing on its own merits.
Do we need to move off WordPress?
Almost never for SEO reasons. WordPress powers a large share of the sites ranking for competitive UK terms. The platform is rarely the constraint.