SEO for WordPress sites, from what Google sees to what people search

Technical fixes, content people search for, and structured data, in the order that matters for your site.

Four parts
  1. Technical: what the first audit finds
  2. Content: what people search
  3. Structured data: what your pages say about themselves
  4. Measurement: whether it worked

When this is the right service

  • Your site has pages that should be found and are not.
  • Google shows pages you never made, or a test copy of your site.
  • You have traffic and it does not turn into enquiries.
  • You are not sure what to write next, or why a page stopped performing.
  • Your blog runs on its own WordPress install and you were told “it validates”.

What it covers

Technical

What the first audit finds

Every project starts with a site audit, and the technical work comes out of it: security issues, pages you did not make, a public test copy, mobile speed, caching and server conflicts, and how your title and description read to a stranger.

On this site: a persistent WordPress hack, a Cloudflare caching conflict and an author-page checklist.

Content

What people search

Why a page underperforms, found before any writing starts: a content gap, a weak title, or two pages competing for one search.

Then what to write, ranked by who is searching and whether the topic fits your business, and what the ranking pages cover and what they all miss.

Structured data

What your pages say about themselves

The right type for each page, one brand identity across installs, CollectionPage on category archives, and the output checked against what prints.

See the schema plugin I built for this.

Measurement

Whether it worked

Search Console and GA4 set up so you can see what changed, including first-party tracking through Cloudflare where it fits.

How: first-party tracking with Google Tag Gateway.

After the free check I tell you what comes first for your site. It is not always the same.

Tools I’m comfortable with

I have worked on real projects with all of these. Which ones I use depends on the client’s project and budget.

Search and keyword data

Google Search Console, Ahrefs, Semrush, SE Ranking

Content

Surfer

Measurement

GA4 and Google Tag Manager

Claude connected to your data

MCP servers for Search Console (including Suganthan Mohanadasan’s), Semrush, SE Ranking and WordPress

A worked example: valid schema that split one brand in two

The situation

A client ran its main site and its blog as two separate WordPress installs. Rank Math was on both. The blog’s schema looked clean: valid JSON-LD, right property names, no missing fields.

What was wrong

The Organization and WebSite nodes on the blog took their @id from the blog’s own address, not the main domain. Two installs made two entity declarations, so Google saw one brand as two.

What the blog said

example.com/blog/#organization

example.com/blog/#website

What it should have said

example.com/#organization

example.com/#website

Why nothing flagged it

The schema was valid. It pointed at the wrong entity. No validator reports that, and Search Console does not either.

The fix

SEO plugins build @id from the WordPress Site URL, and for a /blog/ install that URL is correct, so changing it would break the install. The override has to happen after the plugin builds its schema. I wrote a short PHP filter for it, and later built a plugin that does the same job from a setting.

Check your own site

Open your blog’s homepage, view source and search for application/ld+json. Read the Organization @id. If it contains /blog/ or a subdomain, compare it with the main site’s.

Read the full write-up →   See the schema plugin →

How it runs

Step 1 · Free

A site check

You send me your site. I look from the outside and email what Google sees, what is costing you visitors, and what to fix first. I take 1 to 3 sites a week.

Step 2

You decide

The list is yours to keep. If you want me to do the work, we agree a one-off project or a retainer.

Step 3

The work

One project at a time, a weekly call, and a summary at the end of what I built, what I measured and what to do next.

How working together works →

Questions

Is this only technical SEO?

No. It starts with an audit of your site. Whatever is broken there gets fixed first, then the work moves to content, structured data and measurement.

Do I have to replace Rank Math or Yoast?

No. The cause is the same in every SEO plugin: they build your brand’s identity from the WordPress Site URL, which is wrong on a /blog/ install or a subdomain. The fix I wrote up used Rank Math’s filter. Other plugins need their own version, which I have not tested.

Will schema make me rank higher?

Not by itself. It helps Google understand which entity and page type you mean, and it can make you eligible for rich results. It does not guarantee either.

What does it cost?

It depends on the role I take, how long it runs and the scope. You get a price and a date together after the free check.

Do you only work on WordPress?

WordPress is where I am strongest, so it is where I work fastest. I can work on other platforms, and I will say up front if one is outside what I do well.

Start with the free check

Send me your site and I will tell you what I find.

Text copied to clipboard with attribution!