SEO analysis, how we do it?

Recently, Google has introduced several changes in how it evaluates websites from an SEO perspective. Semantic content on pages, including usefulness and clarity, has become much more important.
There was, of course, a “wow” effect when AI tools started generating content at scale. But as expected, over time this possibility came under stricter filtering, especially with a focus on the actual usefulness of AI-generated text. More on that another time.
No less important from an SEO perspective is the structural integrity of pages, including:
- Page and heading optimization (H1 – H6)
- Server settings and performance
- Content quality: meaning, logic, uniqueness
- Twitter cards and Open Graph for social media
- Meta tags: title, description, canonical links
And that’s just the beginning.
What this article series is about
In the coming weeks, we’ll share how we approach SEO audits for our clients. We’ll talk about:
- what matters when working with content,
- which technical details to watch out for during a site launch,
- and how to avoid losing positions in search results during updates.
And now a short but important sidenote.
We’re preparing to launch our own SEO scanner – a simple tool that lets you check the current SEO health of your site for free.
It will highlight issues, missed opportunities, and give clear next steps.
We’ll be opening access soon – and you’ll be the first to know. But for now, let’s look at what a solid SEO audit actually includes.
Page and heading optimization
Every web page consists not just of text and visuals, but of a clear structure: headings, wrappers, technical blocks – and increasingly, structured data that helps search engines understand what’s actually on the page.
A proper page structure starts with headings. For example, there should only be one H1 – and it should match the page’s core topic.
Headings H2–H6 should follow a hierarchy: no skipping from H1 straight to H4, and each subheading should logically follow the one before it. This is important not only for Google, but also for screen readers and users with accessibility needs.
You can check heading hierarchy using free tools like validator.w3.org.
After headings, comes the actual content. Ideally – at least 300 words per page, broken into paragraphs. That’s not a strict minimum, but a good reference point to ensure the page feels complete.
Having internal and external links is also recommended – it helps search engines understand the context and relationships between pages.
If your content includes images, make sure all of them have an alt attribute. It matters both for accessibility and SEO – especially in industries where visuals are essential.
A note on structured data
Structured data is not visible on the page, but it is actively read by search engines. Schema.org allows you to describe what kind of content is on the page – article, product, event, review, recipe, etc. This directly impacts how your content appears in search – enabling “rich snippets” (stars, breadcrumbs, update dates, and more).
In WordPress, plugins like Yoast SEO or Rank Math can automatically add Schema markup in JSON-LD format. But WordPress itself doesn’t do this by default, and many sites go live without any structured data at all.
You can check your structured data here: validator.schema.org
Things to pay attention to in structured data:
- Organization type and business info
- Breadcrumbs – make sure they’re present and valid
- FAQ markup – question and answer pairs
- Products (if applicable)
- Reviews
Server settings and performance
While content quality is generally straightforward, performance has its own nuances. Scoring 100 across – isn’t easy, but it’s absolutely achievable. There’s no universal recipe here: optimization is usually a process of trial and error. What you definitely shouldn’t do is try to trick the system.
For example, a common trick in the past was to load a screenshot of the page during the first render to “fool” scanners into giving high scores. These days, such tactics don’t work – and often hurt more than help. It’s better to address what actually affects performance.
Key things to pay attention to:
- Scanners like PageSpeed or GTmetrix – these tools help identify weak points and suggest improvements.
- Caching – ideally at both the server level (e.g., memcached or Redis) and the CMS level. For WordPress, plugins like WP Rocket or W3 Total Cache work well.
- Images – use modern formats like WebP or Avif. They’re lighter, load faster, and are supported by most browsers.
- Content shift on load – try to minimize layout shifts. Define block sizes ahead of time and preload fonts where possible.
- DOM structure – reduce the total number of elements on the page. A good rule of thumb is under 1400 DOM nodes.
Performance isn’t just about getting good scores in reports. It’s also about user experience. A fast, stable page always wins – both for SEO and for the actual people visiting your site.
Content: meaning, logic, uniqueness
Don’t create content just for the sake of it. Yes, you’ll need a lot of content to grow a site – but that doesn’t mean quantity should come before purpose. Keep a few simple things in mind:
- Content should match the project’s topic. No point publishing articles that have nothing to do with your niche or product. Even if they attract traffic – they won’t help your site grow in the eyes of search engines.
- Content should carry meaning. Better to write less, but actually address something useful. If you’re writing an article, it should help the reader understand something or take action.
- Content should be unique. This isn’t just about avoiding copy-paste. Don’t rewrite other people’s texts just for SEO. Share your own view, explain how you’ve tackled similar challenges – that’s what makes content truly valuable.
Meta tags, Twitter Cards, and Open Graph
Another important piece of the puzzle is having the right meta tags on the page. What does that include? Primarily:
title
– the page title shown in search resultsdescription
– a short summary of the pagecanonical
– the main URL for the page, used to avoid duplicate contentrobots
– directives for search engines likenoindex
,nofollow
These tags help search engines understand how your content should appear in results and avoid indexing duplicate versions of the same page.
In addition, Twitter Cards and Open Graph markup improve how your pages look when shared in social media or messaging apps.
Here’s what basic Open Graph markup looks like:
<meta property="og:title" content="Page Title">
<meta property="og:description" content="Short description">
<meta property="og:image" content="<https://site.com/image.jpg>">
<meta property="og:url" content="<https://site.com/page>">
<meta property="og:type" content="website">
Twitter Card:
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Page Title">
<meta name="twitter:description" content="Page Description">
<meta name="twitter:image" content="<https://site.com/image.jpg>">
Technical tips:
- title – up to 60 characters, with the keyword closer to the beginning
- description – up to 160 characters, ideally with a value proposition or CTA
- Use only one canonical tag per page
- Make sure og:image loads correctly and doesn’t return 404
- For multilingual sites, you can also add og:locale and hreflang
Technical checks
Last but not least – check all links and images on your site.
Make sure there are no broken links – ones returning 40X (not found) or 50X (server errors). These are bad both for user experience and for search engines.
Also check that images load properly – no 404s, and all should have valid alt attributes. After migrations or theme updates, image paths can easily break – and that’s not always obvious visually.
And finally – check for technical redirects.
If your site runs on WordPress, it’s not uncommon to see the same page accessible through different URLs, like:
https://fortrou.dev/contact----us/
→ https://fortrou.dev/contact-us/
In such cases, set a 301 redirect and make sure the canonical tag points to the correct version. This helps avoid duplicates and strengthens your site’s overall structure.