North SEO logo

The SEO Audit Checklist for 2026: 223 Checks, With the Autumn 2026 Update on Content Quality, Links and AI Search

Published on September 3, 2026 • Technical SEO • By Serhii Dovzhenko

The short answer

An SEO audit is a structured review of everything that decides whether a website gets crawled, indexed, ranked, cited and converted. Done properly it covers twelve areas - crawlability, speed, architecture, on-page, content quality, structured data, local signals, backlinks, AI search readiness, measurement, conversion and security - and it ends with a prioritised list of fixes, not a score.

This page is the full checklist we use at North SEO: 223 checks, each with why it matters and how to check it, with tick boxes that remember your progress. Three sections carry an Autumn 2026 update: content quality (built on Google's own 32 helpful-content questions and Steve Toth's AI page grader), our link-building strategy for 2026 (PR and connections over placements) and AI search readiness (what we have seen work, and what has not).

Your progress: 0/223
SEO audit checklist 2026 - 223 checks across twelve areas, from North SEO Vancouver

What an SEO audit is, and what it is not

An audit is a diagnosis. It answers one question: why does this website get the search results it gets, and what would change them? It looks at the site the way Google, an AI assistant and a customer each see it, finds where those three views disagree, and puts the fixes in order of impact.

An audit is not a PDF from a tool. Every crawler will produce a 90-page export of warnings; we have seen owners pay for those and receive nothing they could act on. It is also not a score. Tools that grade a site 74/100 are measuring what is easy to measure. A site can score 95 and have no business being on page one for the queries that matter, because the checks that decide that - intent match, content depth, links from the right places, an accurate Google Business Profile - are the ones a script cannot grade.

And it is not a strategy. The audit tells you what is broken and what is missing. The strategy decides what to build. We deliver them separately (an audit is $997, a full strategy is a separate engagement) because a strategy built before the audit is guesswork.

How we run an audit, and how to read this checklist

Our standard audit covers a site of up to 50 pages, takes five business days, and comes back as a 40+ page report plus a 30-minute walkthrough call. We crawl the site, pull Search Console and analytics, benchmark the three businesses that outrank you, and then work through the twelve sections below by hand. The report leads with the ten findings that matter, then the full detail by section. Larger sites are quoted separately - the showcase audit we discuss further down covered a retailer with millions of URLs and took considerably longer than five days.

Every check on this page has three parts: what we are looking for and why it matters, how to check it yourself, and a priority. Critical means the problem can stop the site from ranking at all or is a policy risk. High means it is holding back rankings or leads on the pages that earn money. Medium is hygiene: worth doing, rarely the reason a site under-performs. Tick the boxes as you go; the page remembers your progress in this browser. If you want the checklist as a document, use Print.

One warning before you start. It is easy to spend a weekend fixing forty Medium items and feel productive. Do the Criticals first, then the Highs on your five most important pages, then stop and measure. Most sites we audit have three to six problems that explain almost everything, and section 13 is about finding them.

1. Crawlability and Indexation

Nothing else on this list matters if Google cannot reach the page, or reaches it and decides not to keep it. We start every audit here because index problems are usually the cheapest to fix and the most expensive to ignore. In the showcase audit we ran on target.com, two of the biggest findings lived in this section: a video sitemap over the 50 MB limit and an image sitemap with more than 50,000 URLs, which means Google was silently discarding part of the catalogue.

Checklist: Crawlability and Indexation0/24 done
  • Critical

    A missing or broken robots.txt is not fatal, but a robots.txt that returns 5xx makes Googlebot stop crawling the whole site until it recovers.

    How to check: Open /robots.txt in a browser; check the status code in Search Console > Settings > robots.txt report.

  • Critical

    Google renders pages. If it cannot load your stylesheet or scripts it may see a blank page and rank it that way.

    How to check: Use the URL Inspection tool > View crawled page > More info > Page resources. Anything marked 'blocked' needs an Allow rule.

  • High

    Disallow only stops crawling. A URL that is disallowed but linked from elsewhere can still be indexed with no description. As we wrote in the target.com audit: closing pages via robots.txt has an advisory character - pages do not move out of the index.

    How to check: Search Console > Pages > 'Indexed, though blocked by robots.txt'. Move those URLs to a meta robots noindex or X-Robots-Tag instead.

  • High

    Two independent signals that tell Google where the important URLs are.

    How to check: Look for a 'Sitemap:' line in robots.txt and the sitemap status under Search Console > Sitemaps.

  • Critical

    Files over the limit are rejected in full, not truncated. Large stores hit this constantly.

    How to check: Count <url> entries; check the file size. Split into a sitemap index if needed.

  • High

    Every 404, redirect, noindexed or non-canonical URL in a sitemap wastes crawl budget and tells Google the sitemap cannot be trusted.

    How to check: Crawl the sitemap URLs with Screaming Frog in list mode and filter by status code, canonical and indexability.

  • Medium

    Google uses lastmod when it reflects a real content change. Sitemaps that stamp today's date on every URL get ignored. priority and changefreq are not used at all.

    How to check: Compare lastmod against the actual publish/update dates of a sample of pages.

  • Medium

    Mixed www / non-www or http / https entries create duplicates and canonical conflicts.

    How to check: Grep the sitemap for the wrong host pattern.

  • Critical

    A site with 300 real pages and 9,000 indexed URLs has a duplicate problem. A site with 300 pages and 40 indexed has a crawl or quality problem.

    How to check: Search Console > Pages: compare 'Indexed' against your crawl count. Do not trust the site: operator for exact numbers.

  • High

    These two buckets are where thin, duplicate and low-value pages go to die. A growing count is an early quality warning.

    How to check: Search Console > Pages > Why pages aren't indexed. Sample the URLs and decide: improve, consolidate or noindex.

  • Critical

    A noindex left over from staging is the single most common way we have seen a business disappear from Google overnight.

    How to check: Crawl and filter Indexability = Non-Indexable; inspect the reason column.

  • Medium

    Cart, checkout, login, internal search results, tag archives, thank-you pages and filter combinations dilute the site. On target.com we found the /cart page indexed.

    How to check: Search 'site:yourdomain.com' with keywords like cart, login, search, ?s= and review what shows up.

  • High

    Canonicals are how you tell Google which version counts when parameters, tracking codes and case variations create copies.

    How to check: Crawl and check for missing canonicals, canonicals pointing to 404s or redirects, and canonical chains.

  • High

    Example: /Services, /services/ and /services?ref=nav must all end at one canonical address. Sub-domains often miss this even when the main site is clean.

    How to check: Test manually: append ?x=1, change case, add extra slashes. All should redirect or canonicalise.

  • Critical

    Four possible versions of the home page should resolve to one in a single hop.

    How to check: curl -I each variant and follow the redirect.

  • High

    Each hop costs crawl budget and leaks a little link equity. Chains of three or more are common after migrations.

    How to check: Crawl > Response Codes > Redirect chains report.

  • Medium

    If your own navigation links to a URL that 301s, you are making Googlebot take two trips for every page.

    How to check: Crawl > Inlinks to 3xx URLs. Update the links at source.

  • High

    A 'soft 404' (a page that says 'not found' but returns 200) gets indexed as an empty page.

    How to check: Crawl for 4xx; test a nonsense URL and read the status code in DevTools > Network.

  • Medium

    Users who land on a dead page should be able to keep going. Analytics on the 404 page tells you which broken links people actually hit.

    How to check: Visit a made-up URL; check the title says 'Page not found', the layout is intact and the tag fires.

  • Critical

    Server errors during a crawl make Google slow down. Pages that time out are read as unavailable. On JavaScript-heavy sites these often turn out to be rendering timeouts rather than real outages.

    How to check: Crawl > Response Codes > Server Error and No Response; re-test the URLs manually.

  • Critical

    React, Vue, Angular and headless builds can serve an empty shell to crawlers. Google renders JS, but with delay and limits.

    How to check: URL Inspection > Test live URL > View tested page and compare the HTML with what you see in a browser. Check that titles, copy and links exist in the rendered HTML.

  • High

    If older blog posts or deeper product pages are only reachable through pagination that Google cannot follow, they are effectively orphans. This was a finding on target.com's blog hubs.

    How to check: Check that page links are real <a href> links, and that page 2 has its own self-canonical.

  • High

    Colour x size x brand x price filters can generate millions of URLs. Decide which combinations deserve an indexable page and block the rest.

    How to check: Look at the parameter patterns in the crawl and in Search Console; check robots rules, canonicals and noindex on filter URLs.

  • Medium

    Wrong hreflang shows French pages to English users and vice versa. Every tag needs a return tag, and every page needs a self-reference.

    How to check: Search Console International Targeting (legacy) or a crawler's hreflang report; validate return links.

2. Speed, Core Web Vitals and Rendering

Speed is a ranking factor at the margins and a conversion factor everywhere. In 2026 we care less about the PageSpeed score and more about the three Core Web Vitals measured on real users: Largest Contentful Paint, Interaction to Next Paint and Cumulative Layout Shift. A green lab score with a red field score is still a failing page. Optimisation is done page by page - the home page, the top service page and a blog article rarely share the same problems.

Checklist: Speed, Core Web Vitals and Rendering0/22 done
  • Critical

    Google uses real-user data for ranking, not lab tests. Mobile is measured first.

    How to check: Search Console > Core Web Vitals report, or the 'Discover what your real users are experiencing' block in PageSpeed Insights.

  • High

    Usually the hero image, a large heading or a slider. The fix is almost always image size, preload and server response.

    How to check: PageSpeed Insights names the LCP element. Check its format, dimensions and whether it is lazy-loaded (it should not be).

  • High

    INP replaced First Input Delay in 2024. Long tasks from chat widgets, tag managers and heavy frameworks are the usual cause.

    How to check: Chrome DevTools > Performance; look for long tasks over 50 ms during interactions.

  • High

    Content that jumps when ads, fonts or images load. Images without width and height attributes are the number one cause.

    How to check: PageSpeed Insights > Avoid large layout shifts lists the elements.

  • High

    Slow hosting or an uncached CMS makes every other metric worse. Shared hosting on the wrong continent is a common finding for Canadian businesses.

    How to check: PageSpeed Insights 'Initial server response time', or WebPageTest.

  • High

    Full-page caching for WordPress (or the platform equivalent) plus a CDN edge close to Vancouver, Toronto or wherever your customers are.

    How to check: Check response headers for cache hits (x-cache, cf-cache-status, age).

  • Medium

    Cache-Control: max-age=31536000, immutable for versioned CSS, JS, fonts and images; short or no-cache for HTML.

    How to check: Inspect response headers on a CSS file and an image.

  • Medium

    Free 60-80% reduction on HTML, CSS and JS.

    How to check: Look for content-encoding: br or gzip in the response headers.

  • Medium

    Parallel requests over one connection. Any modern host supports it; some legacy servers do not.

    How to check: DevTools > Network > Protocol column (h2 / h3).

  • High

    A 4,000-pixel JPEG scaled down to 400 pixels by CSS is the most common performance waste we find.

    How to check: PageSpeed 'Properly size images' and 'Serve images in next-gen formats'.

  • Medium

    Reserves space so the layout does not shift when they load.

    How to check: Inspect <img> tags in the HTML.

  • Medium

    loading="lazy" on the hero image delays LCP; missing it on the rest wastes bandwidth.

    How to check: Check the loading attribute on the LCP image and on images further down the page.

  • Medium

    Critical CSS inline, the rest deferred; scripts async or defer unless they must run first.

    How to check: PageSpeed 'Eliminate render-blocking resources'.

  • Medium

    Page builders and themes ship megabytes of CSS for components you never use.

    How to check: PageSpeed 'Reduce unused CSS / JavaScript' and Coverage tab in DevTools.

  • High

    Old chat widgets, three analytics tools, heat maps and A/B testing scripts nobody looks at. Each one costs INP.

    How to check: List every external domain in DevTools > Network; ask who uses each one.

  • Medium

    Five font weights from Google Fonts add round-trips and invisible text.

    How to check: Count font requests; check font-display in the @font-face rules.

  • Medium

    Huge DOMs from page builders slow rendering and styling.

    How to check: PageSpeed 'Avoid an excessive DOM size'.

  • Medium

    Tells the browser to warm up connections to the CDN, font host and analytics before they are needed.

    How to check: Look for <link rel="preconnect"> and <link rel="preload"> in the head.

  • Critical

    Google indexes the mobile version. Anything hidden or broken on mobile is hidden or broken for ranking.

    How to check: Test on real devices plus the DevTools device toolbar at 360 px width.

  • Critical

    Without it the page renders at desktop width on phones.

    How to check: Check for <meta name="viewport" content="width=device-width, initial-scale=1">.

  • Medium

    Full-screen pop-ups on entry are a documented ranking negative and a real bounce driver.

    How to check: Load key pages on a phone as a first-time visitor.

  • Medium

    Google tolerates bad HTML, but unclosed tags can hide content from parsers and break structured data. In the target.com audit we found both site-wide and isolated errors across four templates.

    How to check: W3C Nu HTML Checker on one page per template.

3. Site Architecture and Internal Linking

Architecture is how authority flows. A site can have great content and good links and still under-perform because the money pages are buried four clicks deep while the privacy policy sits in every footer. Our default model is hub-and-spoke: a service hub, city or topic spokes underneath, and every spoke linking back up and sideways.

Checklist: Site Architecture and Internal Linking0/14 done
  • High

    Crawl depth correlates with how often Google recrawls a page and how much authority it inherits.

    How to check: Crawl > Crawl Depth report; sort by depth and look for money pages at depth 4+.

  • High

    Pages that exist in the sitemap but receive no internal links are signalling that even you do not think they matter.

    How to check: Compare the crawl against the sitemap and analytics landing pages; anything only found via sitemap is an orphan.

  • High

    Menus built around the org chart ('Solutions', 'Resources') instead of services and locations hide the pages that earn revenue.

    How to check: Read the menu as a customer. Can they find the service and the city in one click?

  • High

    Service hub > service pages > city x service pages, each linking up and across. This is the structure behind our local SEO landing pages.

    How to check: Map the URL folders and the links between them.

  • Medium

    Adds a second internal-link path and the breadcrumb display in results.

    How to check: Check the visible breadcrumb and validate the schema.

  • Medium

    'Click here' and 'read more' tell Google nothing. 'Emergency plumber in Burnaby' does.

    How to check: Crawl > Inlinks export; sort by anchor text.

  • High

    Sort pages by inbound internal links. If the top of the list is legal pages and the bottom is your best service, the link strategy is inverted. This was the core finding in our Pangea.ai work.

    How to check: Crawl > Inlinks count per URL, compared with each page's commercial value.

  • High

    Content earns the traffic; services close it. Each article should have a contextual link to the service it supports.

    How to check: Sample ten articles and count service-page links in the body (not the footer).

  • Medium

    Links injected after load by a widget may not be counted.

    How to check: View the raw HTML source and confirm the <a href> is present.

  • Medium

    Two hundred footer links to every city page is a spam pattern, not a strategy.

    How to check: Count footer links; keep the ones that earn clicks in analytics.

  • High

    Every 404 link is a dead end for users and a wasted crawl.

    How to check: Crawl > Response Codes > Client Error, filtered to internal.

  • Medium

    /services/plumbing/burnaby beats /index.php?id=482&cat=7. Existing URLs should not be changed without redirects just to be prettier.

    How to check: Review URL patterns in the crawl; check for uppercase, underscores, session IDs.

  • Critical

    The target.com showcase found roughly 700,000 broken backlinks pointing at pages that no longer existed. Every one of those is authority thrown away.

    How to check: Export backlinks (Ahrefs / Semrush / GSC Links) and crawl the target URLs for 404s.

  • Medium

    Search results pages and thin tag archives create hundreds of low-value URLs that pull authority.

    How to check: Check whether they are linked, indexable and in the sitemap.

4. On-Page Optimisation

On-page is where keyword research meets the actual HTML. The audit question is not 'is the keyword present' but 'does each page have one clear job, and does every signal on it agree'. Duplicate titles and missing H1s are still the most common findings in 2026, especially on e-commerce sites where two products share a name.

Checklist: On-Page Optimisation0/22 done
  • Critical

    Title is still the strongest on-page signal and the headline in search results.

    How to check: Crawl > Page Titles: filter Missing, Duplicate, Over 60 characters.

  • High

    'Furnace Repair Vancouver | North HVAC' beats 'North HVAC - Home'.

    How to check: Read the top 20 titles in the crawl.

  • High

    Two products called '13-inch Fabric Bin' need a distinguishing attribute in the title, or a unique identifier that doubles as the SKU in Product schema.

    How to check: Crawl > Duplicate titles; group by template.

  • High

    Missing H1s were a full tab in the target.com data export. Multiple H1s from theme logos are common on WordPress.

    How to check: Crawl > H1: Missing, Multiple, Duplicate.

  • Medium

    Product-card templates that wrap every price in an empty <h3> confuse the outline. Headings are for structure, not styling.

    How to check: Use the HeadingsMap extension or a crawler's H2-H6 export.

  • Medium

    Not a ranking factor, but the difference between a 2% and a 5% click-through rate on the same position.

    How to check: Crawl > Meta Description: Missing, Duplicate, Over 160.

  • Critical

    Without a map you get two pages competing for the same query (cannibalisation) and three queries with no page.

    How to check: Build or review the keyword map: URL, primary query, secondary queries, intent.

  • High

    Two pages ranking for the same term alternate in results and neither settles in the top three.

    How to check: Search Console > Performance > filter by query > Pages tab; look for queries with two or more URLs sharing clicks.

  • High

    If Google shows guides for a query and you built a product page, you will not rank. If it shows local packs, you need a local page.

    How to check: Search the target query and note what type of page dominates the top ten.

  • Medium

    Confirms relevance without stuffing.

    How to check: Read the page; do not count density.

  • High

    Pages under roughly 300 words with no unique purpose - old news posts, single-image galleries, near-empty categories - drag the site's quality signal down.

    How to check: Crawl > Word Count sorted ascending; decide merge, expand, noindex or delete for each.

  • High

    Category text repeated on every sub-category, or the same 'about us' paragraph on 40 location pages. On target.com the sub-category pages under /c/home carried identical copy.

    How to check: Crawl > Content > Near Duplicates, or Siteliner.

  • High

    Manufacturer descriptions, copied service copy, syndicated articles.

    How to check: Copyscape or a Google search on a distinctive sentence in quotes.

  • Medium

    Accessibility requirement and the main signal for image search. Alt should describe the image in a sentence: 'Red-crested rooster crowing' beats 'rooster' beats 'image1'.

    How to check: Crawl > Images > Missing Alt Text; spot-check the quality.

  • Medium

    IMG_2359.jpg tells Google nothing; north-seo-office-vancouver.webp does.

    How to check: Review the image URLs in the crawl.

  • Medium

    Linking out to authoritative sources is part of trustworthy content. Affiliate and sponsored links carry rel="sponsored"; user-generated links carry rel="ugc".

    How to check: Crawl > External links; check rel attributes on paid links.

  • Medium

    Controls how the page looks when shared on LinkedIn, Facebook, Slack and in messaging apps - which is where a lot of local referrals happen.

    How to check: Check og:title, og:description, og:image (1200x630) and that the image URL returns 200.

  • Medium

    Changing dates without changing content is on Google's own list of search-engine-first behaviours.

    How to check: Compare visible dates, dateModified in schema and the actual change history.

  • Medium

    lang="en-CA" tells Google and screen readers what they are reading.

    How to check: Check the <html> tag.

  • Medium

    Scannable pages hold attention and are easier for AI systems to quote.

    How to check: Read the page on a phone.

  • High

    Ten city pages that swap only the city name are doorway pages. Each needs local proof: projects, reviews, directions, staff, local regulations.

    How to check: Open three location pages side by side.

  • High

    Part of E-E-A-T and of Google's quality rater guidelines: who is behind the site, and how to reach them.

    How to check: Check the footer and the pages themselves for real details (address, phone, business number).

5. Content Quality - Autumn 2026 Update Autumn 2026 update

This is the section we rewrote for autumn 2026. Google published its own checklist for what good content looks like - the "Creating helpful, reliable, people-first content" guide - and it contains 32 self-assessment questions plus a short "Who, How, Why" framework. For years agencies paraphrased it. This year Steve Toth (SEO Notebook) turned the questions into a custom AI page grader: paste a page into his Custom GPT or Claude Project and it returns PASS, FAIL, PARTIAL or N/A for each of the 32 questions, an overall letter grade, the biggest problems, a prioritised roadmap and an offer to rewrite the sections that failed. Google wrote the exam; Steve built the marking machine. We now run every important page through it as a standard audit step, and we have folded the 32 questions directly into this checklist so you can do it by hand too.

A note on how we grade. The questions are Google's; the wording below is ours. Mark each one honestly. A page that scores PARTIAL on half of them is not a page to publish more of - it is a page to fix.

Checklist: Content Quality - Autumn 2026 Update0/39 done

Content and quality (Google's 12 questions)

  • Critical

    Google's first question. Something on the page has to be yours: data you collected, a project you did, a test you ran.

    How to check: Ask what on this page could not have been written by someone who never did the work.

  • High

    Comprehensive is not the same as long. The page should answer the question fully enough that the reader does not need to go back to search.

    How to check: List the questions a customer asks about this topic; check each is answered.

  • High

    Anyone can list the steps. Explain the trade-offs, the exceptions, what usually goes wrong.

    How to check: Look for 'why' and 'except when' sentences.

  • Critical

    Summaries of the top ten results are exactly what Google's helpful content system is built to demote.

    How to check: Compare the page against the current top three results; what does it add?

  • High

    The heading should tell the reader what they will get, in plain words.

    How to check: Read the H1 alone. Would you know what the page is about?

  • Medium

    'You won't believe' and '#1 in the world' headlines fail this question and cost trust.

    How to check: Check the title against what the page actually delivers.

  • High

    Google's own phrasing. If the honest answer is no, the page is not finished.

    How to check: Ask someone outside the company.

  • Medium

    A quality bar, not a format rule. Blog posts pass it when they are accurate, sourced and useful.

    How to check: Would a journalist cite it?

  • High

    Relative, not absolute. Ranking is a comparison.

    How to check: Open the top five results for the target query and compare depth, accuracy and usefulness.

  • Medium

    Sloppy text reads as low effort to both readers and raters.

    How to check: Run a spelling and grammar pass; read it out loud.

  • Medium

    Broken formatting, missing images, half-finished sections.

    How to check: Open the page on mobile and desktop and look for anything unfinished.

  • Critical

    The 'scaled content' question. Fifty AI-generated city pages published in one afternoon fail it.

    How to check: Check publish dates and volume; look for template copy.

Expertise (4 questions)

  • High

    Links to sources, an author with a real profile, an About page with the real business behind it.

    How to check: Check for a byline, an author page and cited sources.

  • High

    Reviews, mentions, credentials, licences, a physical address.

    How to check: Google the brand; read what comes up beyond your own site.

  • High

    For YMYL topics (health, money, legal, safety) this is not optional.

    How to check: Is the author's expertise stated and verifiable?

  • Critical

    One wrong statute number or price undermines every other claim on the page.

    How to check: Fact-check every number, date, name and claim.

People-first (5 questions)

  • High

    The test for whether the page exists for readers or for Google.

    How to check: Would you send this to a current customer who asked?

  • High

    The 'Experience' in E-E-A-T. Photos you took, results you measured, mistakes you made.

    How to check: Look for evidence of first-hand involvement: your photos, your numbers, your process.

  • Medium

    A plumbing site with articles on crypto and recipes has no focus.

    How to check: Review the blog categories against the business.

  • High

    Not 'more traffic' - the reader's goal.

    How to check: State the reader's goal in one sentence; check the page gets them there.

  • Medium

    Pop-ups, ads, walls of text and buried answers all fail this.

    How to check: Read the page as a stranger on a phone.

Search-engine-first warning signs (11 questions - a YES is a fail)

  • Critical

    The root question. Everything below is a symptom of it.

    How to check: Why did this page get written?

  • High

    The shotgun strategy. It dilutes the site and trips the scaled-content classifier.

    How to check: Look at topic spread and volume in the last 12 months.

  • Critical

    AI is allowed. AI at scale with no human value added is not.

    How to check: Check for machine-written boilerplate across many pages.

  • High

    Roundups and rewrites.

    How to check: Compare against the sources.

  • Medium

    Newsjacking outside your expertise.

    How to check: Do the topics match the business?

  • High

    The clearest sign the page is incomplete.

    How to check: Check engagement: return-to-SERP behaviour, time on page, scroll depth.

  • Medium

    Google has said repeatedly there is no preferred length. Length should follow the question.

    How to check: Look for padding, repeated points and 'in conclusion' paragraphs.

  • High

    Common with 'best X' affiliate pages on service sites.

    How to check: Does the business actually do this?

  • High

    'Release date confirmed' for something unconfirmed. In local services: 'guaranteed #1 rankings'.

    How to check: Search the page for guarantees and unverifiable promises.

  • Medium

    Google's own words. Fake freshness is detectable and penalised.

    How to check: Compare the shown date against the actual revision.

  • Medium

    Bulk publishing and bulk pruning as a ranking tactic, not an editorial decision.

    How to check: Review publish/delete patterns.

Who, How and Why

  • High

    Google's 'Who'. A real name, a photo, a bio and a way to verify them.

    How to check: Check for a byline and click it.

  • Medium

    Google does not require a disclosure on every page - only where 'how was this made?' is a natural question.

    How to check: Decide per page type; add a short process note where appropriate.

  • Medium

    A methods paragraph turns a claim into evidence.

    How to check: Look for 'how we tested' or 'how we know' sections.

  • Critical

    Google calls this 'perhaps the most important question'.

    How to check: Answer it honestly for every page type on the site.

  • Critical

    Of Experience, Expertise, Authoritativeness and Trust, Google says trust is the most important. The other three feed it.

    How to check: Check the trust signals across the whole site, not just the page.

  • High

    Health, finance, legal and safety content is held to stricter E-E-A-T standards.

    How to check: Identify YMYL pages and audit them separately.

  • High

    Steve Toth's grader (Custom GPT and Claude Project versions) returns a grade, the biggest problems and a fix order in a minute. It is the fastest honest second opinion we have found.

    How to check: Paste the page in, record the grade, fix the FAILs first, then the PARTIALs.

6. Structured Data and Entities

Schema markup is the one part of the LLM conversation where we have hard evidence: it works. Pages with clean Organization, LocalBusiness, Service, Product and FAQ markup get cited by AI assistants more consistently and pick up rich results in Google. Most sites we audit have breadcrumbs and nothing else - target.com, at the time of our showcase audit, was exactly that.

Checklist: Structured Data and Entities0/12 done
  • Critical

    The entity Google and AI assistants attach everything else to. sameAs links to your social profiles, GBP, BBB and directories tie the entity together.

    How to check: Validate with the Rich Results Test and the Schema Markup Validator.

  • Medium

    One entity identifier, reused, instead of a fresh Organization block on every page.

    How to check: Check the @id value and that Person, WebSite, WebPage and Service nodes point to it.

  • High

    Author entities are how Google connects bylines to expertise.

    How to check: Check for a Person node with jobTitle, sameAs and url.

  • Medium

    Controls the site name shown in results.

    How to check: Validate on the home page.

  • High

    Feeds the byline, date and image in results and in AI citations.

    How to check: Validate on three articles.

  • Medium

    Describes what you sell and where.

    How to check: Validate one service page.

  • High

    Required for price and stock in results; a Merchant Center prerequisite.

    How to check: Validate; check for 'missing field' warnings.

  • Medium

    Google reduced FAQ and HowTo rich results in 2023; the markup still helps AI systems parse question-and-answer content, but hidden or fake FAQs are a violation.

    How to check: Compare markup against the visible page.

  • Medium

    Displayed in results and a clean structural signal.

    How to check: Validate on a deep page.

  • High

    Marking up your own testimonials as Organization reviews is a manual action risk.

    How to check: Check where aggregateRating appears and what it is attached to.

  • High

    Warnings are fine; errors mean the markup is ignored.

    How to check: Search Console > Enhancements section for each type.

  • High

    Contradictions between sources are how entities lose trust with both Google and language models.

    How to check: Compare schema values against the footer, contact page and GBP.

7. Local SEO and Google Business Profile

For any business that serves a city or a region, the Google Business Profile is worth more than the website for phone calls. We cover it in depth in our GBP optimisation blueprint and the post-reinstatement guide; the checks below are the audit view. Two rules from our own work: a profile ranks strongest within a few kilometres of its verified address, and the fastest way to lose a profile is to edit the name, address or category the week after it was verified.

Checklist: Local SEO and Google Business Profile0/20 done
  • Critical

    Ownership problems surface at the worst time - usually during a suspension.

    How to check: Check the Business Profile Manager users list.

  • Critical

    'Bob's Plumbing - Best Plumber Vancouver' is a suspension waiting to happen.

    How to check: Compare GBP name with signage, licence and website.

  • Critical

    The primary category is the strongest ranking factor in the local pack.

    How to check: Compare with the categories of the top three competitors in the pack.

  • Critical

    Virtual offices and co-working addresses are a leading suspension cause.

    How to check: Check the address type and, for SABs, that the address is hidden and service areas are set.

  • High

    Consistency is how Google confirms the entity exists. 'Suite 100' vs 'Unit 100' vs '#100' counts as inconsistent to many aggregators.

    How to check: Run a citation audit (BrightLocal, Whitespark, Semrush Listing Management) and fix mismatches.

  • Medium

    Wrong hours generate 'closed' labels and bad reviews.

    How to check: Compare GBP hours with the website and reality.

  • Medium

    Feeds the 'services' justification in the local pack.

    How to check: Review the Services tab against the service pages.

  • Medium

    750 characters; the first 250 show.

    How to check: Read it.

  • Medium

    Profiles with regular photo activity get more calls and direction requests.

    How to check: Count photos and check the dates of the most recent ones.

  • High

    Steady beats bursty: ten reviews in one day after none for a year looks bought. Every review, good or bad, gets a reply.

    How to check: Chart review dates; check the reply rate.

  • High

    Review gating (only asking happy customers) violates Google policy; paying for reviews violates the Competition Act.

    How to check: Review the review-request process and templates.

  • Medium

    Activity signals plus answers that pre-empt objections.

    How to check: Check the Updates and Q&A tabs.

  • Medium

    Sends the local signal to the page that should rank locally.

    How to check: Check the URL on the profile.

  • Medium

    Without it, profile clicks show up as direct or organic and you cannot value the profile.

    How to check: Check the link for utm_source=google&utm_medium=organic&utm_campaign=gbp (or your convention).

  • High

    The website side of local ranking.

    How to check: Audit the location pages against the on-page section above.

  • High

    Projects done there, testimonials from there, drive times, local regulations.

    How to check: Read the page; count the local specifics.

  • Medium

    Authority and NAP confirmation. Our local citations package builds 50 of these by hand.

    How to check: Search each directory for the business.

  • High

    Duplicates split reviews and can trigger suspensions.

    How to check: Search Maps for the business name and phone number.

  • Medium

    Rank from the office address means nothing; rank across the service area does.

    How to check: Run a geo-grid report (Local Falcon, BrightLocal) for the main terms.

  • Medium

    The profile has its own analytics; almost nobody reads them.

    How to check: Business Profile > Performance; export the last 6 months.

Links still decide close races, and the audit still starts with the same questions it did five years ago: who links to you, with what anchor, from what kind of site, and how does that compare with the businesses above you. What changed in 2026 is what we do with the answer.

Our link strategy this year is built on PR and connections rather than placements. The old model was buying guest posts on general sites with an SEO metric attached. The new model is: identify the businesses and organisations your customers already trust - suppliers, complementary trades, industry associations, local media, community groups - make real contact, and produce content good enough for them to want to cite. A Vancouver painting contractor gets more from one link from a local supplier's 'recommended installers' page and one mention in a neighbourhood publication than from ten links on 'home improvement blogs' nobody reads. Local first, relationships second, metrics third. This also happens to be exactly the kind of link that shows up in AI answers, because assistants weight mentions from sources people recognise.

Checklist: Backlinks and Off-Page - Autumn 2026 Update0/20 done
  • High

    No single tool sees everything. Ahrefs, Semrush or Majestic plus GSC gives the fullest picture.

    How to check: Export and de-duplicate by linking domain.

  • Critical

    The audit question is the gap, not the absolute number. 'You have 12 referring domains, the businesses in the pack have 60-90' is the finding.

    How to check: Compare referring domains, not raw links; look at the top 20 linking domains for each competitor.

  • Critical

    Links to pages you deleted are authority you already earned and threw away. Restore or 301.

    How to check: Crawl the target URLs from the backlink export; redirect any 4xx.

  • High

    A profile where 40% of anchors are 'plumber vancouver' looks manufactured.

    How to check: Anchor report in the backlink tool; group by type.

  • High

    Sitewide footer links, links from unrelated foreign-language sites, link networks with the same template.

    How to check: Sort by linking domain; sample the suspicious ones manually.

  • Medium

    Google says it ignores most spam links. A disavow file uploaded 'just in case' removes links that were helping.

    How to check: Review the existing disavow file, if any; justify every entry.

  • Medium

    Fifty links in one month after a year of none reads as a campaign.

    How to check: Chart new referring domains per month.

  • High

    A link from a BC construction association means more than one from a global tech directory.

    How to check: Categorise the top linking domains by topic and location.

  • High

    The highest-trust links most local businesses can get, and usually free - they just have to ask.

    How to check: List suppliers and partners; check whether each has a page that could link to you.

  • High

    Membership directories are trusted by Google and by AI systems as verification of a real business.

    How to check: Check each membership for a live profile link.

  • High

    This is the PR side of the strategy. One local story generates links, brand searches and citations at once.

    How to check: Search '[business name]' in Google News and local outlets; list sponsorship pages.

  • Medium

    Sites already talking about you without a link are the easiest outreach there is.

    How to check: Search for the brand name minus your domain; email the ones that fit.

  • High

    PR without something worth citing is begging. Content built to be referenced - a survey of local prices, a permit guide, a calculator - earns links for years.

    How to check: List the site's assets that a journalist or partner could reference. If the list is empty, that is the finding.

  • Medium

    Response rates on templated outreach are near zero in 2026. Ten researched emails beat a thousand automated ones.

    How to check: Review the last outreach campaign: list size, personalisation, replies.

  • High

    Off-page trust is not only links. Third-party reviews are cited by AI assistants and shown in results.

    How to check: Check the review count and recency on each platform.

  • Medium

    Not a direct ranking factor; a strong entity and discovery signal.

    How to check: Open each profile; check for the site link, logo, description, and recent activity.

  • High

    The shortlist for outreach. These sites already link to businesses like yours.

    How to check: Link Intersect (Ahrefs) or Backlink Gap (Semrush).

  • Medium

    Links from relationships need a human to maintain the relationship.

    How to check: Ask who does it. If nobody, it is not happening.

  • Medium

    Required by Google's link spam policies.

    How to check: Check outbound paid links for the attribute.

  • High

    The output metric for PR. More people typing your name is the clearest sign the off-page work is landing - and brand queries are what AI systems use to recognise entities.

    How to check: Search Console > Queries filtered to brand terms, 12 months compared with the previous 12.

Every agency now sells 'AI SEO', 'GEO' or 'AEO' as a separate product. Our position after a year of watching it on client sites: LLM optimisation is 95% the same work as SEO. Google AI Overviews, AI Mode, ChatGPT, Perplexity and Claude all cite pages that are crawlable, fast, well-structured, authoritative and truthful. The remaining 5% is a set of habits, and we list them here.

Three observations from our own sites and client sites in 2025-2026. First, llms.txt does not work - we have one on northseo.ca, we have watched the logs, and we have seen no evidence any major assistant reads it or that it changes citations. It costs nothing, so keep it, but do not sell it. Second, schema.org markup works well: pages with complete entity markup are picked up and described more accurately. Third, citations work well - being mentioned and linked on sites the models already trust is the most reliable route into AI answers we have found.

The rest of what matters is content behaviour: answer the question at the top of the page, then be as comprehensive as the topic deserves so one page can satisfy as many variations of the customer's request as possible, and write only what is true and demonstrable. AI assistants are summarising you to a customer. If the page exaggerates, the assistant either repeats the exaggeration (and the wrong client shows up) or discounts the source. Truthful, E-E-A-T-grade content is how you get the right clients and an accurate representation of the business in someone else's answer.

Checklist: AI Search and LLM Readiness - Autumn 2026 Update0/18 done
  • Critical

    Blocking these removes you from ChatGPT search, Perplexity and Claude citations. Some publishers choose that; a local business almost never should.

    How to check: Read robots.txt for user-agent blocks; check the CDN or firewall (Cloudflare has a one-click AI bot block that is often on by default).

  • High

    Cloudflare, Sucuri and similar can challenge or block bots regardless of robots.txt.

    How to check: Check server logs or the CDN bot report for 403s to GPTBot, ClaudeBot and PerplexityBot.

  • Critical

    Answer first, then explain. Assistants extract the passage that answers the query; if it is in paragraph nine, another site's paragraph one wins.

    How to check: Read the opening of each key page: is the question answered before the scroll?

  • High

    'Cost of X', 'X near me', 'how long does X take', 'X vs Y' - one strong page that handles the cluster beats five thin ones.

    How to check: List the related queries from Search Console and check the page addresses each.

  • Critical

    The single most important LLM check. Models cross-reference. Inflated review counts, fake 'since 1998', unverifiable awards - an assistant will either repeat them to the wrong customer or downgrade you.

    How to check: Fact-check the page against reality: numbers, dates, credentials, prices.

  • High

    Question headings map directly to how queries are phrased in chat interfaces.

    How to check: Compare H2s against real queries from Search Console and from sales calls.

  • Medium

    Assistants lift passages, not pages. A section that depends on the previous three paragraphs for context is hard to cite.

    How to check: Read a random H2 section in isolation. Does it make sense?

  • High

    'Our audit takes 5 business days and covers sites up to 50 pages' is citable. 'We deliver lightning-fast, comprehensive insights' is not.

    How to check: Count concrete facts per page versus adjectives.

  • Critical

    Confirmed to work. Structured data is how models disambiguate you from the other business with a similar name.

    How to check: See the Structured Data section; all of it applies here doubly.

  • High

    Models build their picture of you from every source. Contradictions between sources (different founding year, different service list) blur the entity.

    How to check: Search the brand and read the descriptions on the first two pages of results.

  • High

    Confirmed to work. Directory listings, association memberships, local news, review platforms, Wikipedia-class references where relevant.

    How to check: Ask ChatGPT, Perplexity and Google AI Mode what they know about the business, and where the information came from.

  • High

    The output metric. Track it monthly.

    How to check: Run the ten most important queries in ChatGPT (with search), Perplexity, Google AI Mode and Claude; record whether the business is named and which page is cited.

  • Medium

    You cannot improve what you do not measure, and none of this shows up in Search Console yet in a usable way.

    How to check: Pick a method and keep a dated log.

  • Medium

    Small but growing and highly qualified. Group it so you can see it.

    How to check: GA4 > Traffic acquisition; build a channel group or an exploration filtered by those sources.

  • High

    E-E-A-T applied to AI: models favour sourced, attributed content when choosing what to cite.

    How to check: See the content quality section - the Who, How, Why checks.

  • Critical

    Most AI crawlers do not execute JavaScript. If your React site ships an empty shell, the assistants see an empty page.

    How to check: curl the page and grep for the main heading and first paragraph.

  • Medium

    Both are heavily extracted formats.

    How to check: Check the top and bottom of long guides.

  • Medium

    Costs nothing; we have seen no effect. Keep it accurate and move on.

    How to check: Check /llms.txt exists and lists the main pages with one-line descriptions.

10. Analytics, Tracking and Measurement

Half the audits we do begin with a site that has three analytics tags, none of them measuring a phone call. An SEO programme without conversion tracking is a traffic programme. Measurement is also the first thing we set up on a new retainer, which is why it is a product on its own in our store.

Checklist: Analytics, Tracking and Measurement0/12 done
  • Critical

    Duplicate tags double-count; missing pages leave holes.

    How to check: Tag Assistant on five page types; check for two GA4 configs firing.

  • Critical

    Without key events GA4 reports sessions, which nobody can bill against.

    How to check: GA4 > Admin > Key events; test each one live.

  • High

    For most local businesses the phone is 60-80% of leads.

    How to check: Tap the number on a phone and confirm the event; review the call-tracking setup if present.

  • High

    Tracking the click counts failed submissions and spam.

    How to check: Submit a test form; check the event fires only after success.

  • Critical

    The single most valuable free SEO data source. Domain property covers all sub-domains and protocols.

    How to check: Search Console > Settings > Users and permissions.

  • Medium

    Enables query data in GA4 and conversion import to Ads.

    How to check: GA4 > Admin > Product links.

  • Medium

    Your own team inflates sessions and deflates conversion rate.

    How to check: GA4 > Data filters; check the internal traffic definition.

  • Medium

    Still a thing in 2026.

    How to check: Review referral sources for junk.

  • Medium

    Bing powers Copilot, DuckDuckGo and Yahoo, and Bing Webmaster data feeds Microsoft's AI answers.

    How to check: Log in; import from Search Console.

  • Medium

    Search Console averages hide local variation; a tracker with location settings shows the real picture.

    How to check: Check the tracker has the mapped keywords and the right city.

  • High

    If the report is 40 pages of screenshots, nobody reads it and the SEO gets cancelled.

    How to check: Read the last three reports. Can you tell what changed and why?

  • Medium

    Six months from now nobody remembers why traffic dropped in March.

    How to check: GA4 has no annotations; keep a dated change log.

11. Conversion and User Experience

Ranking is a means. We check the page as a customer, because a page that ranks and does not convert is a cost. These are the checks we make on every money page.

Checklist: Conversion and User Experience0/10 done
  • High

    A sticky call button on mobile is often the single highest-ROI change in an audit.

    How to check: Load the service page on a phone.

  • High

    tel: links, including in the footer and header.

    How to check: Tap it.

  • High

    Every extra field costs submissions; every silent failure costs a lead.

    How to check: Submit a test on mobile.

  • High

    People decide in the two seconds around the button.

    How to check: Screenshot the area around the CTA.

  • Medium

    'Call for a quote' loses the price-shoppers to the competitor who shows a range. Transparent pricing is also a Google and TBR trust criterion.

    How to check: Check the service pages for prices or 'from' ranges.

  • Medium

    Stock photos are a trust and E-E-A-T negative; reviewers and raters notice.

    How to check: Reverse-image-search the hero images.

  • Medium

    Most visitors read 20% of the page.

    How to check: Skim in ten seconds; what did you learn?

  • Medium

    A booking widget that takes six seconds is a lost booking.

    How to check: Time the widget load; test the flow.

  • Medium

    Legal exposure under provincial accessibility legislation, and better usability for everyone.

    How to check: Run Lighthouse Accessibility and WAVE on key pages.

  • Medium

    The audit should end with three UX fixes, not thirty.

    How to check: GA4 exit pages and, where available, session recordings (Clarity is free).

12. Security, Compliance and Hygiene

Boring until it is not. A hacked site, a lapsed certificate or a domain that quietly expired will undo a year of SEO in a week. These checks take twenty minutes.

Checklist: Security, Compliance and Hygiene0/10 done
  • Critical

    Aim for an A or A+ on SSL Labs. Expired certificates throw browser warnings that kill traffic instantly.

    How to check: SSL Labs test; check the renewal method.

  • Medium

    HTTP images or scripts on HTTPS pages break the padlock.

    How to check: DevTools console warnings; crawler 'Insecure Content' report.

  • Critical

    A 'This site may be hacked' label ends the conversation.

    How to check: Search Console > Security Issues; VirusTotal URL scan.

  • High

    Outdated WordPress plugins are the top infection vector we see.

    How to check: Check the updates screen and the user list.

  • High

    A backup nobody has tested is a hope.

    How to check: Ask when the last restore test happened.

  • Critical

    We have seen businesses lose domains registered by a former web designer.

    How to check: WHOIS the domain; check the registrant and expiry.

  • Medium

    A domain that used to be a casino or a spam site carries history. Check before buying or when inheriting.

    How to check: Wayback Machine snapshots; backlink history.

  • High

    Canadian law: PIPEDA federally, PIPA in BC, and CASL for email. The policy needs to describe the tools you actually run (GA4, ads pixels, chat).

    How to check: Read the policy against the tag list from the analytics section.

  • Critical

    Old SEO tricks left by a previous vendor still earn manual actions.

    How to check: Fetch as Googlebot and compare; search the CSS for display:none text blocks; check Search Console > Manual actions.

  • Medium

    Rare, but a shared server full of spam sites is worth knowing about.

    How to check: Reverse-IP lookup of the hosting address.

Showcase: what a real audit finds (target.com)

We do not publish client audits. To show what the process produces, in 2022 we ran the full checklist on a site that did not hire us: target.com, one of the largest retailers in North America, with a team and a budget most businesses will never have. The point was not to embarrass anyone - the point is that if a site at that scale has these findings, yours almost certainly has some of them too.

  • Sitemaps over the limit. A video sitemap over 50 MB and an image sitemap with more than 50,000 URLs. Both are rejected in full by Google, which means part of the catalogue was never being submitted at all. Section 1, check 5.
  • Roughly 700,000 broken backlinks. Links from other websites pointing at Target pages that no longer existed. Every one is authority the site had earned and then discarded. The fix is a redirect map, not new link building. Section 3, check 13 and Section 8, check 3.
  • Structured data limited to breadcrumbs. No Product, Organization, WebSite or AggregateOffer markup on a site with hundreds of thousands of products. Section 6.
  • 'No response' URLs in the crawl that returned 200 by hand. The site was built in React, and pages that rendered slowly were being read as unavailable. Googlebot may also miss pages that take a long time to load. Section 1, check 21 and Section 9, check 16.
  • robots.txt used as a noindex. Disallow rules on pages that were still in the index, because Disallow does not remove pages. Section 1, check 3.
  • Duplicate titles and H1s from identical product names, empty H3 tags in every product card, sub-category pages sharing the same copy, a 404 page with the wrong title, the cart page indexed, and mobile speed in the red on every template we tested.

None of those were exotic. They were the first six sections of this checklist, applied carefully. That is the whole method.

Turning 223 checks into a plan

The checklist is exhaustive on purpose. The plan should not be. Here is how we reduce the findings to something a business can execute in a quarter.

First, separate blockers from everything else. A blocker is a Critical that stops Google, an AI assistant or a customer from reaching or trusting the site: a noindex on the money pages, a robots.txt block, a hacked site, a suspended Business Profile, a site that only renders in JavaScript, claims on the site that are not true. Blockers are fixed this week, before anything else, because nothing else will register until they are.

Second, pick the five pages that should make the phone ring and apply every High in sections 4, 5, 6, 9 and 11 to those pages only. Do not touch the other two hundred pages yet. Five excellent pages beat two hundred slightly improved ones, and they give you a measurable before and after.

Third, fix the site-wide technical Highs - speed, redirects, canonicals, internal linking - because those lift every page at once and are usually one developer ticket each.

Fourth, start the slow work: the content programme from section 5, the partner and PR outreach from section 8, the review and citation work from section 7. These compound over months and they are where an ongoing retainer earns its fee.

Finally, measure. Section 10 exists so that in ninety days you can say what changed in leads, not in scores. If you cannot, the audit was a document, not a diagnosis.

If you would rather have us run the audit, it is $997 CAD in the store, or start with the free website analyzer and a call. Either way you will get the same checklist, applied to your site, with the findings in the order they should be fixed.

Frequently asked questions

What is an SEO audit?

An SEO audit is a structured review of everything that affects how a website is crawled, indexed, ranked and converted: technical health, site structure, on-page optimisation, content quality, structured data, backlinks, local signals, analytics and, since 2025, readiness for AI search. The output is a prioritised list of problems and the fixes for each, not a score.

How long does an SEO audit take?

Our standard audit for a site of up to 50 pages is delivered within 5 business days as a 40+ page PDF with a prioritised action plan and a 30-minute walkthrough call. Larger sites, e-commerce catalogues and multi-language sites are quoted separately and usually take two to three weeks.

How much does an SEO audit cost in Canada?

Our SEO Audit is $997 CAD one-time for sites up to 50 pages, and includes a 200+ point technical crawl, competitor gap analysis, a keyword opportunity map and the walkthrough call. You can buy it directly in our store or start with the free website analyzer.

How often should a website be audited?

A full audit once a year, a technical health check every quarter, and a lightweight check after any redesign, migration, platform change or major Google update. Ongoing retainers include monitoring, so the annual audit becomes a review rather than a rescue.

Do I need a separate 'AI SEO' or GEO audit?

No. In our experience LLM optimisation is about 95% the same work as SEO. The remaining 5% - AI crawler access, answer-first page structure, entity markup, third-party citations and citation tracking - is covered in section 9 of this checklist and is part of every audit we deliver.

Which tools do you use for an SEO audit?

Google Search Console and GA4 first, then a crawler (Screaming Frog), PageSpeed Insights and CrUX data, Ahrefs or Semrush for backlinks and competitor gaps, the Rich Results Test and Schema Markup Validator, SSL Labs, VirusTotal, the Wayback Machine, a local rank grid tool, and for content quality an AI grader built on Google's 32 helpful-content questions.

Can I do this audit myself?

Yes - that is why the checklist above has a 'how to check' line and a tick box on every item. Most owners can complete the crawlability, on-page, content and local sections in a weekend with free tools. Where it usually pays to bring in help is interpreting the findings, prioritising them and doing the technical fixes.

How this article was made: the checklist is the working document we use on audits, edited for publication. The content-quality section reproduces the intent of Google's 32 self-assessment questions from its "Creating helpful, reliable, people-first content" guide in our own words; the grader we reference is Steve Toth's, published in his SEO Notebook newsletter. Observations about AI search are from our own sites and client sites over 2025-2026 and will be updated as they change. Drafting and formatting were assisted by AI tools; every check was reviewed and edited by the author.

Serhii Dovzhenko

Serhii Dovzhenko

Founder & SEO Expert

Canadian entrepreneur and search engine optimizer from Ukraine. Founder of North SEO, helping Vancouver businesses grow online with passion, dedication, and community spirit.

Want the audit done for you?

223 checks, your website, five business days. A 40+ page report with the findings in the order they should be fixed, and a 30-minute call to walk through it.

Order the SEO Audit - $997 CAD

or run the free analyzer first