Web Design SEO Checklist 2026: 22 Items Every Site Needs
2026-06-27 · 18 min read
Updated June 2026
Vendor-neutral guidance for Canadian businesses · Done-for-you SEO web design by Lead4Pro

Why SEO Must Be Baked Into Web Design, Not Added Later
Most SEO problems are not content problems — they are architecture and design problems that were baked in before the first word was written. When a developer structures URLs with session parameters, or a designer renders critical headings in CSS background images, or a theme uses JavaScript to render body text that Googlebot cannot execute, the damage is done long before an SEO consultant is ever called.
Industry surveys consistently find that over 63% of Canadian SMB websites have at least one critical on-page SEO issue at launch — missing canonical tags, no XML sitemap, or titles duplicated across multiple pages. Fixing those issues post-launch is not just a content edit: it often requires structural changes to templates, redirects that must stay in place permanently, and weeks of waiting for Google to re-crawl and re-evaluate.
Google's page experience update solidified what was previously considered optional. Core Web Vitals — LCP, CLS, and INP — are now confirmed ranking signals, measured in the field via Chrome User Experience Report data and in the lab via PageSpeed Insights (pagespeed.web.dev). A site that scores poorly on mobile Core Web Vitals is competing at a structural disadvantage, regardless of how good the content is.
Google Search Console, which is free, is the primary monitoring tool you should connect on day one. It surfaces crawl errors, indexing failures, Core Web Vitals issues segmented by page type, and rich result eligibility. Connecting it before launch — using the URL inspection tool to verify Google can access and render pages — prevents the most common launch-day mistakes. Connecting it after a problem surfaces means you may have already lost weeks of ranking data.
The economic argument is straightforward: a developer costs less per hour in the design phase than in the emergency-fix phase. A redirect chain left from a 2022 redesign that was never cleaned up can suppress rankings for years. An XML sitemap that was blocked in robots.txt during development and never unblocked can prevent hundreds of pages from being indexed. These are five-minute fixes during build and multi-week recovery projects after launch.
The sections below walk through all 22 items grouped by category — starting with site structure, moving through on-page signals, technical performance, and closing with Canadian-specific local SEO requirements. Each item includes what to check, why it matters, and what a failing state looks like.
Items 1–3 — URL Structure, Site Architecture, and Canonical Tags
These three items are the foundation. Get them wrong and every on-page effort above them is diminished. Get them right and you create a structure that distributes ranking signals efficiently across your site.
Item 1: URL structure. Every URL should be short, descriptive, and contain the primary keyword for that page. Use hyphens between words, not underscores — Google treats hyphens as word separators and underscores as word connectors, which affects how keywords are parsed. Avoid query parameters in indexable URLs where possible; parameters like ?session=abc123 or ?color=red&size=large create duplicate content at scale.
URL structure best practices — apply in order:
- Strip stop words where they add no meaning (avoid
/our-services/our-hvac-service-for-ottawa/; use/hvac-service-ottawa/) - Keep slugs under 5–6 words where possible
- Use all-lowercase letters
- Use hyphens, never underscores or spaces
- Avoid dynamic parameters on content pages; reserve them for internal search and faceted navigation with canonical tags
- Match the URL to the H1 heading — if your heading is "Emergency Plumber Ottawa" your slug should be
/emergency-plumber-ottawa/
Item 2: Site architecture. Flat hierarchies outrank deep ones. Google gives more ranking weight to pages that are close to the homepage in link distance. Aim for a maximum of three clicks from the homepage to any content page. Orphan pages — pages with no internal links pointing to them — are crawled infrequently and often drop out of the index entirely. Use breadcrumb navigation (both visible and in BreadcrumbList schema) so users and crawlers always know where they are in the site.
Item 3: Canonical tags. A canonical tag (<link rel="canonical" href="...">) tells Google which version of a URL is the authoritative one. Without them, Google may split ranking signals between https://example.ca/, https://example.ca/index.html, https://www.example.ca/, and https://example.ca/?ref=newsletter — four distinct URLs that serve identical content. This is especially critical for Canadian businesses running bilingual sites: the French /fr/ and English / versions of each page must each carry their own canonical pointing to themselves, not to each other.
Items 4–5 — Title Tags and Meta Descriptions
Title tags and meta descriptions are the two on-page elements most directly tied to click-through rate in search results. They are also among the most commonly botched — either duplicated across dozens of pages, truncated because they exceed character limits, or written without a target keyword anywhere in the string.
Item 4: Title tags. Keep title tags at or under 60 characters (Google typically displays up to ~580px width, which corresponds to roughly 55–60 characters in most fonts). Place the primary keyword as close to the front as possible, and put the brand name at the end, separated by a pipe or dash. Every page needs a unique title — Google will rewrite titles it considers misleading or keyword-stuffed, and it will often replace duplicated titles with the H1 text or the page URL.
| Version | Title Tag Example (Canadian Plumber) | Assessment |
|---|---|---|
| Bad | Home Page | Smith Plumbing Services Inc. Ottawa Ontario Canada | Brand first, no keyword, 72 chars — will truncate |
| Bad | Emergency Plumber Ottawa | Plumber Ottawa | Ottawa Plumbing | Keyword-stuffed, likely rewritten by Google |
| Good | Emergency Plumber Ottawa — 24/7 | Smith Plumbing | Keyword first, brand at end, 49 chars, clear intent |
| Good | Drain Cleaning Ottawa: Fast Same-Day Service | Smith Plumbing | Specific service, location, value prop, 60 chars |
Item 5: Meta descriptions. Meta descriptions do not directly affect rankings — Google confirmed this years ago — but they directly affect click-through rate, which is a user behaviour signal. Keep them under 155 characters, include the primary keyword (Google bolds matching query terms in the snippet), and make them action-oriented. Write them as a pitch, not a summary: "Get same-day emergency plumbing in Ottawa. Licensed technicians, upfront pricing. Call or book online." is more effective than "Smith Plumbing offers plumbing services in Ottawa Ontario." Every page needs a unique meta description. If you leave them blank, Google picks its own excerpt, often from mid-paragraph text that is not compelling as a standalone pitch.
Items 6–7 — Heading Hierarchy and Content Structure
Headings are not just visual formatting — they are semantic signals that tell Google what a page is about and how the content is organized. Misusing them (multiple H1s, skipped heading levels, headings used purely for styling) sends conflicting signals and can undermine on-page relevance.
Item 6: Heading hierarchy. Every page gets exactly one H1. That H1 must contain the primary keyword for the page — not a variation, not a subset, the exact target phrase or a very close natural-language variant. Use H2s for the main section headings that Google uses to understand page structure. Use H3s for sub-items within those sections. Never skip levels (do not jump from H2 to H4). Never use a heading tag because of how it looks — use CSS classes on paragraph or span elements for visual styling instead.
Heading best practices checklist:
- One H1 per page, containing the primary target keyword
- H1 visible in the rendered HTML — not inside an image or SVG
- H2s used for main sections (each H2 can contain a secondary keyword naturally)
- H3s used for sub-points within H2 sections only
- No heading used purely for visual size — use CSS for that
- No heading levels skipped (H1 → H2 → H3, not H1 → H3)
- FAQ question headings use H3 (within the H2 "Frequently Asked Questions" section)
- Headings read naturally when extracted — they should outline the page like a table of contents
Item 7: Keyword placement. The primary keyword should appear in the first 100 words of body text — this is a long-established on-page signal. It should appear in at least one H2, in the alt text of at least one image (where natural), and in the page URL. Secondary keywords can be distributed through H2s and body copy. The goal is natural density, not stuffing: if a plumber in Ottawa writes "plumber Ottawa" fourteen times in 300 words, Google's algorithms flag it as manipulative and the page underperforms. Write for a reader, then verify keyword coverage, not the reverse.
Items 8–9 — Structured Data and Schema Markup
Schema markup is machine-readable metadata embedded in your page that tells Google precisely what type of content it is looking at. It does not guarantee rich results, but without it, your pages are ineligible for them entirely. For Canadian local businesses, schema is one of the highest-leverage, lowest-effort improvements available — a single well-formed LocalBusiness block on every page takes less than two hours to implement and affects every page simultaneously.
Item 8: LocalBusiness schema. Every page of a local business site should carry a LocalBusiness JSON-LD block (or a specific subtype: Plumber, Dentist, Restaurant, HomeAndConstructionBusiness, etc.). At minimum include: name, address (with PostalAddress and the correct Canadian province abbreviation), telephone, openingHours, priceRange, and geo (latitude and longitude). For Canadian businesses, include @id set to the canonical URL, and areaServed listing the provinces, cities, or regions served. Inconsistency between schema and the visible page content — for example, a phone number in schema that does not match the one displayed on the page — signals unreliability.
Item 9: Additional schemas. FAQPage schema should be added to any page that contains a visible FAQ section — the questions and answers in the schema must match the visible text exactly. BreadcrumbList schema should appear on every page, reflecting the actual navigation path. Service schema belongs on each individual service page. Blog posts and articles should use Article or BlogPosting. Google's Rich Results Test at search.google.com/test/rich-results validates your markup and shows which enhancements your page qualifies for. Google Search Console's Enhancements tab shows aggregate rich result eligibility across your entire site — this is where you will see errors like "Missing field 'name'" that affect multiple pages at once.
One important note for redesigns: schema markup is frequently lost during platform migrations. A move from WordPress to Webflow, for example, may silently strip LocalBusiness schema that was added via a plugin. Add a schema audit step to your redesign checklist and validate every schema type on every page template after migration, before launch.
Items 10–12 — Core Web Vitals and Page Speed
Core Web Vitals are Google's standardized performance metrics, measured in real-world Chrome user data. They became official ranking signals with the 2021 Page Experience update and have been weighted more heavily in subsequent updates. Passing Core Web Vitals on mobile is harder than on desktop, and Google's mobile-first indexing means the mobile scores are what matters most.
| Metric | Target (Good) | Common Fix |
|---|---|---|
| LCP (Largest Contentful Paint) | ≤ 2.5s | WebP images, preload hero image, fast hosting |
| CLS (Cumulative Layout Shift) | ≤ 0.1 | Set width/height on all images and videos |
| INP (Interaction to Next Paint) | ≤ 200ms | Defer third-party scripts, reduce JS bundle size |
Item 10: LCP (Largest Contentful Paint). LCP measures how long it takes for the largest visible content element — usually a hero image or H1 heading — to render. Target ≤2.5 seconds. The most common fixes: convert hero images to WebP (30–50% smaller than JPEG), add explicit width and height attributes so the browser knows the space before the image downloads, add a <link rel="preload"> tag for the hero image in the HTML head, and ensure your hosting delivers the page HTML within 200ms (Time to First Byte). Shared hosting in Canada that routes through US servers can add 80–120ms latency alone. For more on how speed ties into rankings, see our guide on website speed and SEO.
Item 11: CLS (Cumulative Layout Shift). CLS measures visual instability — how much the page layout shifts as resources load. A hero image that loads in late and pushes the heading down is a CLS failure. The fix is almost always simple: set explicit width and height attributes on every image and video element so the browser reserves space. The same applies to embedded maps, iframes, and ads. Fonts can also cause CLS if they swap with a fallback — use font-display: optional or font-display: swap with a well-matched fallback font to minimize font-induced shift.
Item 12: INP (Interaction to Next Paint). INP replaced FID (First Input Delay) as a Core Web Vital in March 2024. It measures how quickly your page responds to user interactions — taps, clicks, keyboard input. Target ≤200ms. The primary causes of poor INP are large JavaScript bundles executing on the main thread, third-party scripts (chat widgets, analytics, ad networks), and render-blocking resources. Fixes include deferring non-critical JavaScript, moving third-party scripts to load after the page is interactive, and splitting large JavaScript files. Use pagespeed.web.dev on mobile to get a diagnosis — the tool shows which scripts are blocking the main thread and for how long.
Items 13–14 — Mobile-First Design
Google switched to mobile-first indexing in 2019 and completed the transition across all sites in 2024. This means the mobile version of your site is what Google crawls, indexes, and ranks. If your desktop site has robust structured data and your mobile version strips it out, Google sees a page with no schema. If your desktop site has 1,200 words of body content and your mobile version collapses it behind a "Read more" button that requires JavaScript to expand, Google may index significantly less text than you intend.
Item 13: Mobile-first CSS and responsive layout. Build with mobile-first CSS — write base styles for the smallest screen and use min-width media queries to add complexity for larger screens. Never disable tap targets smaller than 48×48px; Google Search Console's Mobile Usability report flags tap targets that are too small or too close together. No horizontal scrolling on any screen narrower than 320px. CIRA's .CA Internet Use Survey reports that approximately 62% of Canadian web traffic now comes from mobile devices — the majority of your visitors are on a phone, and so is Google's crawler.
Item 14: Viewport meta tag and legible type. Every HTML page must include <meta name="viewport" content="width=device-width, initial-scale=1.0">. Never add user-scalable=no or maximum-scale=1 — these prevent users from zooming, which is both an accessibility violation and a Google ranking factor. Body text must be legible at 16px minimum without zooming. Buttons and form inputs need sufficient contrast (WCAG AA requires a minimum ratio of 4.5:1 for normal text).
Mobile design checklist:
- Viewport meta tag present on every page with no zoom-blocking attributes
- Body font size 16px minimum
- Tap targets 48×48px minimum, 8px spacing between adjacent targets
- No horizontal scroll on 320px viewport width
- Hero image serves a mobile-appropriate size (not a 2400px image delivered to a 390px screen)
- Navigation accessible without hovering — mobile has no hover state
- Forms usable with mobile keyboards — correct
typeattribute on inputs (tel, email, number) triggers the right keyboard - Test on a real device, not just a browser emulator — emulators miss tap target issues and iOS Safari rendering quirks
Item 15 — Image Optimization
Images are the single largest cause of slow page loads on Canadian SMB sites. A homepage that serves six 2MB JPEGs is loading 12MB of images on a mobile connection before a single word is read. Image optimization is not a nice-to-have — it is the fastest performance win available on most sites, and it ties directly to LCP scores and user engagement.
Item 15: Image optimization process. Follow these steps for every image on your site:
- Convert to WebP. WebP delivers 25–35% smaller file sizes than JPEG at equivalent quality, and 50–70% smaller than PNG for photos. Most modern browsers support it (Chrome, Safari 14+, Firefox, Edge). Use the
<picture>element with a JPEG fallback for older browsers. - Set explicit dimensions. Every
<img>element must havewidthandheightattributes matching the intrinsic image size. This prevents CLS by letting the browser reserve space before the image loads. - Write descriptive alt text. Alt text serves two purposes: accessibility for screen readers, and keyword relevance for Google's image search. Write a natural description that includes the primary keyword where it fits — "web design SEO checklist diagram" is better than "image1.jpg" and better than "web design SEO checklist web design SEO checklist web design". Never leave alt blank on meaningful images.
- Use lazy loading for below-fold images. Add
loading="lazy"to any image that does not appear in the initial viewport. Useloading="eager"on the hero image (this is the default anyway, but making it explicit avoids framework overrides). - Compress to under 100KB where possible. A hero image can be 150–250KB and still deliver excellent quality in WebP. Thumbnails and card images should stay under 50KB. Use Squoosh (free, browser-based) or sharp (Node.js) for batch conversion.
- Use descriptive filenames.
hvac-repair-ottawa.webpis better thanIMG_4829.jpgfor both humans and search engines.
Items 16–17 — Internal Linking
Internal links are how you distribute ranking authority across your site and tell Google which pages are most important. A homepage with 40 external backlinks pointing at it holds significant authority. That authority flows through internal links to service pages and location pages. A service page with zero internal links pointing to it does not benefit from any of that authority, regardless of how good its content is.
Item 16: Internal link architecture. Plan your internal link structure before you build, not after. Start from the homepage and draw a map: homepage links to hub pages (main service categories, main locations), hub pages link to spoke pages (specific services, specific cities), spoke pages link back to the hub and cross-link to related spokes. Every page should have at least two internal links pointing to it from relevant pages, and every page should link out to at least two related pages in the site. Orphan pages — no inbound internal links — are crawled rarely and frequently drop from the index. Use Google Search Console's Coverage report to identify pages that have been indexed but receive no traffic; orphan status is a common cause.
Item 17: Anchor text. Use descriptive, keyword-rich anchor text for internal links. "Click here" and "read more" are the weakest possible anchors — they convey no information to Google about the destination page's topic. Instead, use the target page's primary keyword or a natural variant: "our emergency plumber Ottawa page" or "HVAC service in Ottawa" as link text. Avoid over-optimizing to the point of exact-match repetition, which can trigger spam signals; vary the phrasing naturally across multiple links. During a redesign, maintain a link map: document every significant internal link that exists on the current site and ensure equivalent links exist in the new structure. Losing dozens of internal links to a key service page is a silent ranking killer.
For more specific guidance on how speed and linking interplay with rankings, our website speed and SEO reference covers the technical layer in detail. If you are planning a full rebuild, the website redesign checklist walks through the pre-launch migration steps systematically.
Items 18–19 — Local SEO Signals (Canadian Context)
For Canadian businesses targeting geographic search terms — "plumber Ottawa," "web design Montreal," "accountant Calgary" — local SEO signals are among the most direct ranking levers available. These signals operate at three levels: on-site (structured data, NAP, location pages), off-site (Google Business Profile, directories), and regulatory (Law 25 in Quebec, PIPEDA federally).
Item 18: NAP consistency. NAP stands for Name, Address, Phone — the three data points that define your business identity across the web. Google cross-references your website NAP against your Google Business Profile listing, Canada411, Yellow Pages Canada, Yelp Canada, the CIRA WHOIS record for your domain, and dozens of other data sources. Any discrepancy — "Suite 200" on your website but "Ste 200" in Canada411, or a phone number with different area code formatting — creates conflicting signals that suppress your map pack ranking. Audit every citation source before launch and standardize the format: full legal business name, full civic address including province (two-letter code), and phone in consistent format (e.g., (613) 555-0123). For our deeper guidance on citation building and map pack ranking, see our local SEO guide.
Item 19: Location pages and service-area content. A business serving multiple cities needs a dedicated page for each major service area, not a single "We serve these cities" paragraph. An HVAC company serving Ottawa, Gatineau, and Kanata needs three distinct pages with unique content — not the same template with the city name swapped. Each page should include the LocalBusiness schema with that city's specific address or areaServed value, customer reviews from that area where possible, and internal links from the homepage and service pages.
Canadian businesses in Quebec must comply with Law 25 (Loi modernisant des dispositions législatives en matière de protection des renseignements personnels), which came into full effect in September 2023. This requires a privacy policy, explicit consent for non-essential cookies, and documented handling of personal data. PIPEDA (Personal Information Protection and Electronic Documents Act) applies federally to all private-sector organizations. A privacy policy page is not just a legal requirement — it is also an indexed page that builds site authority and user trust.
Items 20–22 — HTTPS, XML Sitemap, and robots.txt
These three items live at the crawlability layer. They determine whether Google can find, access, and trust your pages in the first place. A perfectly optimized page that Google cannot access due to a robots.txt error ranks nowhere.
Item 20: HTTPS. Google has used HTTPS as a ranking signal since 2014. Chrome displays a "Not Secure" warning for any page served over HTTP, which destroys trust and increases bounce rate. Every HTTP request must 301-redirect to the HTTPS equivalent — not 302 (temporary), which does not pass full link equity. After implementing HTTPS, check for mixed content: HTTP resources (images, scripts, stylesheets) loaded on HTTPS pages. Mixed content triggers browser security warnings and defeats the purpose of HTTPS. Find them using the browser console (look for "Mixed Content" warnings) or tools like Why No Padlock?
Item 21: XML sitemap. Your XML sitemap is the document you hand to Google listing every canonical, indexable URL you want in the index. Include all content pages, service pages, location pages, and blog posts. Exclude paginated pages (use canonical to point to the root), filtered URLs (e.g., /products/?colour=blue), staging and development URLs, and any page that carries a noindex directive (an indexable-noindex conflict is one of Google's most common crawl errors). Submit the sitemap to Google Search Console under the Sitemaps tab. Update it automatically whenever you publish new content — most CMS platforms do this via plugin or built-in feature.
Item 22: robots.txt. The robots.txt file sits at the root of your domain (yourdomain.ca/robots.txt) and tells crawlers which directories and files to skip. Common legitimate exclusions: staging directories (/staging/, /dev/), admin panels (/wp-admin/, /admin/), and parameter-based duplicate URLs. What you must never block: CSS files, JavaScript files, and images. If Googlebot cannot access these, it cannot render your pages correctly, which affects how it understands your content and may downgrade your pages. After every deployment, verify your robots.txt is correct and that your sitemap URL is listed in it (Sitemap: https://yourdomain.ca/sitemap.xml).
The Full 22-Point Checklist (Printable)
Use this as your pre-launch and post-redesign audit. Each item should be verified on every page template, not just the homepage.
Structure (Items 1–3)
- 1. URL slugs are short, keyword-rich, hyphenated, lowercase, no query parameters on indexable pages
- 2. Site architecture is flat (max 3 clicks to any page), no orphan pages, breadcrumb nav implemented
- 3. Canonical tag present on every page, pointing to the correct self-referencing canonical URL
On-Page (Items 4–9)
- 4. Title tag ≤60 chars, primary keyword near front, brand at end, unique per page
- 5. Meta description ≤155 chars, includes keyword, action-oriented, unique per page
- 6. One H1 per page containing the primary keyword; H2/H3 hierarchy respected, no levels skipped
- 7. Primary keyword in first 100 words of body text, in at least one H2, in at least one image alt attribute
- 8. LocalBusiness (or subtype) JSON-LD schema on every page with complete NAP, openingHours, geo, areaServed
- 9. FAQPage schema on FAQ sections, BreadcrumbList on all pages, Article on blog posts, Service on service pages — all validated via Rich Results Test
Technical (Items 10–15)
- 10. LCP ≤2.5s on mobile: hero image in WebP, explicit dimensions, preloaded in <head>
- 11. CLS ≤0.1: width/height set on all images and embeds, no layout-shifting ads or fonts
- 12. INP ≤200ms: third-party scripts deferred, main-thread JavaScript minimized
- 13. Mobile-first CSS, tap targets ≥48px, no horizontal scroll at 320px width
- 14. Viewport meta tag present, no zoom-disabling attributes, body font ≥16px
- 15. All images in WebP with descriptive alt text, explicit dimensions, lazy loading on below-fold images, size ≤100KB where feasible
Linking and Local (Items 16–19)
- 16. Every page has ≥2 internal links in (from relevant hub or homepage); every page links out to ≥2 related pages
- 17. Internal link anchor text is descriptive and keyword-rich (no "click here" or "read more")
- 18. NAP identical on website, Google Business Profile, Canada411, Yellow Pages Canada, and WHOIS record
- 19. Dedicated location page per city served; Law 25 privacy policy page present for Quebec businesses, PIPEDA compliance for all Canadian businesses
Crawlability (Items 20–22)
- 20. All HTTP 301-redirects to HTTPS; no mixed content errors in browser console
- 21. XML sitemap includes all canonical indexable pages; submitted to Google Search Console; excludes noindex and parameter URLs
- 22. robots.txt blocks staging/admin directories only; CSS, JS, and images are not blocked; sitemap URL listed
Common SEO Mistakes Made During Website Redesigns
A website redesign is the single highest-risk SEO event a business can undertake. Every structural decision — CMS choice, URL patterns, template architecture, redirect handling — affects how Google perceives the new site. The following six mistakes account for the majority of post-redesign ranking collapses. If you are planning a rebuild, the website redesign checklist covers each of these with step-by-step prevention checklists.
1. Changing URLs without 301 redirects. This is the most common and most damaging redesign mistake. A page that has accumulated two years of backlinks and rankings at /hvac-repair.html loses all of that equity instantly if it moves to /services/hvac-repair/ without a permanent 301 redirect from the old URL. The solution: audit all indexed URLs via Google Search Console before touching anything, map each old URL to its new destination, and implement server-side 301 redirects as part of the build — not as an afterthought after launch. Verify every redirect returns HTTP 301 (not 302, not 200) using curl or a redirect checker.
2. Launching without canonical tags. A new site that goes live without canonical tags immediately creates duplicate content problems. The homepage alone may be accessible at yourdomain.ca, www.yourdomain.ca, yourdomain.ca/index.html, and yourdomain.ca/home/. Without canonicals, Google treats these as competing pages and may rank none of them well.
3. Blocking Googlebot in robots.txt during staging. Almost every staging environment uses a robots.txt that blocks all crawlers — Disallow: /. The catastrophic version of this mistake is when developers copy the staging robots.txt to production without updating it. The entire site becomes invisible to Google within days. Always verify robots.txt immediately after launch: the only allowed disallows should be admin paths and staging directories.
4. Removing structured data during platform migration. Switching from WordPress to Webflow, or from a custom CMS to Shopify, often silently removes LocalBusiness, FAQPage, and Product schema that was added via plugins or custom templates. After any platform migration, validate schema on every page template using Google's Rich Results Test before removing the old site.
5. Not testing on real mobile devices. Browser developer tools simulate mobile screen sizes but do not replicate iOS Safari rendering bugs, real-world tap target failures, or the performance of a mid-tier Android device on an LTE connection. Test on at least two real devices — one iOS, one Android — before launch. Google's Mobile Usability report in Search Console will catch some issues post-launch, but catching them pre-launch costs a fraction of the time.
6. Using JavaScript-rendered content that crawlers cannot read. Single-page applications and JavaScript frameworks can render content entirely client-side. If your body text, H1, and structured data are injected by JavaScript after the initial HTML loads, Googlebot may not see them — it renders pages but has a crawl budget limit on JavaScript execution. Verify using Google Search Console's URL Inspection tool: fetch the page and view the rendered HTML. If your H1 is missing or your schema is absent in the rendered output, Google is not seeing it either.
SEO Web Design Cost in Canada (2026 Pricing)
Understanding what SEO-integrated web design costs in Canada helps you budget realistically and evaluate proposals. The range is wide because "web design" covers everything from a $500 template to a $25,000 custom build. The differentiating factor for SEO is whether schema, Core Web Vitals, and site architecture are included in scope or treated as add-ons. For context on the full cost picture, our website cost in Canada guide breaks down pricing by project type and province.
| Option | What You Get | Typical CA$ Cost |
|---|---|---|
| DIY (WordPress / Webflow) | Template, basic SEO settings, plugin-based schema | $500–$3,000/yr (tools + hosting) |
| Freelancer (Canada) | Custom design, on-page SEO, basic schema implementation | $2,500–$8,000 one-time |
| Agency (Montreal / Toronto / Vancouver) | Custom design + technical SEO + full schema + Core Web Vitals | $5,000–$25,000+ |
| Monthly SEO retainer | Ongoing optimization, content production, backlink building | $500–$2,500/mo |
Pricing ranges based on Canadian market surveys; final cost depends on site size, content volume, and competitive landscape.
The DIY route can produce a solid site if the builder understands the 22 items on this checklist and implements them deliberately. The common DIY failure is installing a theme that looks professional but has poor Core Web Vitals scores out of the box, no schema, and JavaScript-heavy navigation that Googlebot struggles with. Many popular WordPress themes have LCP scores above 5 seconds on mobile with no customization.
For Canadian SMBs that want the checklist executed by professionals, Lead4Pro's web design and SEO service covers the full 22 items from architecture to ongoing local SEO — a common choice for Quebec, Ontario, and BC businesses launching new sites. Alongside trends in layout and performance, our article on web design trends 2026 covers what modern Canadian buyers expect from a business website this year.
A Real Redesign Case Study — Ottawa Service Business
The following is an anonymized case study from a residential HVAC company in Ottawa that approached a web design agency in late 2025 with a specific problem: they were generating organic leads consistently from a five-year-old WordPress site, then lost approximately 40% of that traffic during a self-managed redesign the previous year.
Before state. The original redesigned site had an LCP of 6.2 seconds on mobile — measured via Google PageSpeed Insights on a Moto G4 profile, which is Google's standard mobile benchmark. There was no structured data of any kind: no LocalBusiness schema, no BreadcrumbList, no Service schema on any of the eight service pages. Multiple pages shared identical title tags ("Home | HVAC Ottawa | Smith Heating & Cooling") that had been applied during the CMS migration without customization. Fourteen redirect chains from the original domain had been imported as-is, meaning users and crawlers were hitting three-hop redirects for key service pages. The site ranked on page 3 for "furnace repair Ottawa" — a term it had previously ranked on page 1 for.
Redesign actions taken. The agency migrated the site to a static file structure served over a CDN with an Ottawa-region edge node, eliminating the shared-hosting latency. All 220 images were converted to WebP and compressed to an average of 68KB, down from an average of 1.1MB. Explicit width and height attributes were added to every image element. The hero image was preloaded via a <link rel="preload"> tag. A LocalBusiness schema block with complete NAP, openingHours, geo coordinates, and areaServed covering Ottawa and surrounding municipalities was added to every page template. Service schema was added to all eight service pages. BreadcrumbList was added sitewide. The fourteen redirect chains were resolved: each final destination URL was audited, and all intermediate redirects were collapsed into a single direct 301 from the original URL to the current destination. Breadcrumb navigation was added visually and in schema.
Results (11 weeks post-launch). LCP on mobile dropped from 6.2 seconds to 1.8 seconds — a 71% improvement, moving from "Poor" to "Good" on Google's scale. Google Search Console's Coverage report showed all 47 target pages indexed within three weeks, compared to 31 indexed before the redesign (several had been dropped from the index during the previous migration). "Furnace repair Ottawa" moved from page 3 to position 4 on page 1 within 11 weeks. Overall organic leads increased 68% compared to the same 11-week period in the prior year. The structured data changes produced FAQ rich results on three service pages within six weeks of launch, measurably increasing CTR from 2.1% to 4.7% on those pages.
The lesson is not that any single change drove the recovery — it was the combination of Core Web Vitals improvement, structured data implementation, redirect chain cleanup, and meta tag de-duplication working together. Each item on the checklist reinforces the others.
Frequently Asked Questions
What is a web design SEO checklist?
A web design SEO checklist is a list of on-page and technical items you verify during design or before launch: URL structure, title tags, meta descriptions, heading hierarchy, schema markup, Core Web Vitals speed targets, mobile-first layout, image optimization, internal linking, HTTPS, XML sitemap, and local SEO signals. Addressing these during design costs far less than fixing them after launch.
How many SEO items should I check before launching a website?
At minimum, check 15–22 items: title tag and meta description on every page, proper heading hierarchy, canonical URLs, mobile-first layout, page speed (LCP under 2.5s, CLS under 0.1), HTTPS, XML sitemap submitted to Google Search Console, and at least basic structured data. Canadian businesses should also verify Google Business Profile NAP consistency.
Does web design affect SEO?
Yes — directly. URL structure, heading hierarchy, page speed (Core Web Vitals), mobile layout, image alt text, and internal linking are all design decisions that affect how Google crawls and ranks your pages. A poor design rebuild can drop rankings; a well-planned one improves them.
How do I check Core Web Vitals?
Use Google PageSpeed Insights (free) at pagespeed.web.dev. Aim for LCP (Largest Contentful Paint) under 2.5s, CLS (Cumulative Layout Shift) under 0.1, and INP (Interaction to Next Paint) under 200ms. Run it on mobile, which is Google's primary crawl mode.
What schema markup should a small business website have?
At minimum: LocalBusiness (or a specific subtype like Plumber or Restaurant), FAQPage on FAQ content, and BreadcrumbList on every page. Service pages benefit from Service schema. Blog articles should use Article or BlogPosting. Google's Rich Results Test at search.google.com/test/rich-results validates the markup.
What is the most common SEO mistake in a website redesign?
Changing URLs without 301 redirects. A redesign that moves /old-service-page.html to /services/service-name/ and leaves no redirect will drop that page's rankings within weeks. Always audit existing indexed URLs, map them to new URLs, and implement server-side 301 redirects before going live.
How long does it take to see SEO results after a redesign?
Google typically re-crawls a redesigned site within 2–6 weeks, but ranking movements take 2–4 months to stabilize. If you preserved URLs, improved speed, and added structured data, rankings often improve within 90 days. If you changed URLs without redirects, recovery can take 6+ months.
Get a free SEO web design audit
Tell us about your site — we identify your top 5 SEO gaps and send back a plan. No payment.