On-Page SEO: The Complete Checklist for Every Page on Your Site
The on-page SEO checklist I use on every client site. Title tags, headings, content, internal links, images, and the 5 mistakes I see on 90% of sites I audit.
TL;DR
On-page SEO is the one area you fully control. Get your title tags, headings, content, and internal links right, and you've handled about 40% of the ranking equation. I've audited 300+ websites, and the same five mistakes show up on almost all of them. This checklist fixes every one.

On this page
I’ve audited over 300 websites in the last 15 years. The same five on-page mistakes show up on roughly 90% of them: generic title tags, missing heading structure, no internal links, unoptimized images, and content that reads like it was written for robots instead of people.
The frustrating part? On-page SEO is the one area you have complete control over. You don’t need to wait for other sites to link to you. You don’t need a developer to fix server configurations. You just need to know what to do on each page, and then do it.
This is the checklist I use on every client engagement. Print it, bookmark it, or download the PDF version and tape it to your monitor.
What On-Page SEO Is (And Why It’s the Part You Control)
When I audit a new client’s website, on-page SEO is always where I start. The title tags, the heading structure, the content itself, the images, the internal links between pages. These are the elements that live on your actual web pages, and they sit alongside off-page SEO (your site’s reputation elsewhere on the internet) and technical SEO (whether Google can crawl and understand your site).
On-Page vs Off-Page vs Technical: The Quick Distinction
Think of it this way. On-page is your storefront and the signs in your window. Off-page is what the neighborhood says about you. Technical is whether the door opens and the lights turn on.
All three matter. But on-page is where most small businesses should start, because it’s the fastest to fix and produces the most visible improvements. When I work with a new SEO client, on-page optimization is always part of the first 30 days.
Why On-Page Is Where Most Small Businesses Should Start
Most small business websites have never had their on-page elements properly configured. The site was built, the content was uploaded, and nobody touched it again. That means the title tags are either auto-generated or generic, the heading structure is decorative rather than logical, and the pages aren’t linking to each other.
Fixing these basics can move the needle before you spend a dollar on link building or content marketing. I’ve seen pages jump 10-15 positions in search results from title tag and heading changes alone.
Title Tags and Meta Descriptions: Your First Impression on Google
Your title tag is the blue link people see in Google’s search results. It’s the single most impactful on-page element you can change.
How to Write Title Tags That Get Clicks (Not Just Rankings)
A good title tag does two things: it tells Google what the page is about, and it convinces a real person to click.
The formula I use:
Primary Keyword + Modifier + Brand (if space allows)
Keep it under 60 characters. Google truncates anything longer, so your carefully crafted title gets cut off mid-sentence. Front-load your keyword because Google gives more weight to words at the beginning.
Good example: “Bathroom Remodeling Colorado Springs | Free Estimates” Bad example: “Home | ABC Contracting LLC”
That second one tells Google nothing about what the business does. I see it on at least half the sites I audit.
Meta Descriptions That Convert Searchers to Visitors
Meta descriptions don’t directly affect your rankings. Google has confirmed this multiple times. But they massively affect your click-through rate, and click-through rate does influence rankings over time.
Think of your meta description as a free ad on Google. You get about 155 characters to convince someone your page has the answer they need. Include your primary keyword (Google bolds matching terms), a clear benefit, and something specific enough that it couldn’t describe any other business.
Common Title Tag Mistakes That Tank Your CTR
Here are the ones I fix most often:
- Every page has the same title tag. Your homepage, services page, and about page all say “ABC Company.” Google doesn’t know which page to show for which search.
- Keyword stuffing. “Plumber | Plumbing Services | Best Plumber | Emergency Plumber | 24/7 Plumber.” Google reads this as spam, and humans skip right past it.
- Missing location. If you serve a specific area, your title tag should say so. “Plumber” competes nationally. “Plumber in Colorado Springs” competes locally, where you can actually win.
Heading Structure: H1s, H2s, and Why Hierarchy Matters
Headings create an outline for your page. Google reads them to understand what topics the page covers and how they relate to each other.
One H1 Per Page (And What to Put in It)
Every page gets exactly one H1 tag. It should include your primary keyword and clearly describe what the page is about. On a service page, that might be “Bathroom Remodeling in Colorado Springs.” On a blog post, it’s your article title.
I regularly audit sites where the logo is coded as the H1 on every page. That means Google thinks every page on the site is about the company name, not the actual services.
Using H2s and H3s to Organize Content for Readers and Google
H2s are your main sections. H3s are subsections within those. Think of it like a book outline:
- H1: Bathroom Remodeling in Colorado Springs
- H2: Our Remodeling Process
- H3: Design Consultation
- H3: Material Selection
- H3: Construction Timeline
- H2: Pricing and Financing
- H2: Why Choose Us
- H2: Our Remodeling Process
This hierarchy tells Google (and your readers) exactly what the page covers. It also makes your content scannable for people who scroll before they read, which is most people.
Content Optimization: Writing for Humans First, Google Second
Good on-page SEO content answers the question someone searched for, in the way they’d want it answered. That sounds obvious, but the number of sites that write for search engines instead of people is staggering.
Keyword Placement That Feels Natural (Not Stuffed)
Put your primary keyword in the first 100 words of the page, in at least one H2, and in the URL. After that, write naturally. Google has been smart enough to understand synonyms and context for years.
If your primary keyword is “bathroom remodeling Colorado Springs,” you don’t need to repeat that exact phrase 15 times. Use variations: “bathroom renovation,” “remodel your bathroom,” “bathroom contractors in the Springs.” Google connects them all.
Content Length: How Long Should Each Page Type Be
There’s no magic number, but here’s what I’ve observed across hundreds of client pages:
Service pages tend to perform best at 800-1,500 words. Enough to cover what you do, who it’s for, your process, and why you’re the right choice. For example, the Sealwise Epoxy service pages I built included process details, material explanations, and before/after context. They ranked #1 across a 25-mile radius. Contrast that with the typical contractor service page that says “We do epoxy floors. Call us.” in 50 words and ranks nowhere.
Location pages work well at 500-1,000 words, specific to that city, with local details that prove you actually serve the area. Neighborhood mentions, local landmarks, area-specific pricing considerations. Generic pages that swap only the city name get filtered out by Google.
Blog posts generally need 1,500-3,000 words for most topics. Long enough to be comprehensive, short enough that people finish reading. This post you’re reading right now is on the longer end because the topic demands it. A post comparing two products might do perfectly well at 1,200 words.
The real answer: your page should be as long as it needs to be to fully answer the searcher’s question. No padding, no fluff.
Internal Linking: Connecting Your Pages Into a Network
Internal links are one of the most underused on-page elements I see. Every page on your site should link to at least 2-3 other relevant pages. Your service pages should link to related blog posts. Your blog posts should link back to service pages. Your location pages should link to the services you offer there.
This does two things: it helps Google discover and understand the relationships between your pages, and it keeps visitors on your site longer by guiding them to the next relevant piece of content.
When I worked on the WCG CPAs project, building a strong internal linking structure across their content library was a core part of the strategy that contributed to 991 top-3 keyword rankings.
Image Optimization: Alt Text, File Size, and File Names
Images are often the biggest missed opportunity I find in audits. Here’s the checklist:
- File name: Rename “IMG_4392.jpg” to “bathroom-remodel-colorado-springs.jpg” before uploading. This gives Google context before it even looks at the image.
- Alt text: Describe what’s in the image naturally. “Completed bathroom remodel with walk-in shower and marble tile” is useful. “Bathroom remodeling Colorado Springs best contractor” is keyword stuffing.
- File size: Compress images to under 100KB when possible. A 3MB hero image can add 2-3 seconds to your page load time, and according to Google’s own research, 53% of mobile users leave a site that takes longer than 3 seconds to load.
- Format: Use WebP or AVIF for modern browsers. They deliver the same quality at roughly 30% smaller file sizes than JPEG.
URL Structure and Page Speed Basics
Clean URLs That Humans and Search Engines Can Read
Your URL should tell someone what the page is about before they click on it. Keep URLs short, descriptive, and include your target keyword.
Good: /services/bathroom-remodeling-colorado-springs/ Bad: /services/page-id-47/?ref=nav
Avoid dates in blog post URLs unless the content is genuinely time-sensitive. A URL like /blog/2024/03/bathroom-tips/ signals old content to both Google and readers.
Page Speed as an On-Page Factor
A slow page hurts your rankings and kills your conversions. Google has used page speed as a ranking signal since 2018, and their Core Web Vitals update made it even more important.
The basics that make the biggest difference:
- Compress images (see above)
- Enable browser caching
- Minimize JavaScript that blocks rendering
- Use a fast hosting provider
For a deeper technical breakdown, read my technical SEO guide which covers Core Web Vitals, crawlability, and site architecture.
The On-Page SEO Checklist (Print This Out)
Here’s the checklist I run through on every page I optimize. If you want a printable PDF version, download it here.
Before You Publish: 15-Point Checklist
Search appearance (what Google and searchers see first):
- Title tag is under 60 characters and includes primary keyword at the front
- Meta description is under 155 characters with keyword and a clear benefit
- URL is clean, short, and includes the target keyword
Content structure (how your page is organized):
- One H1 tag per page that includes your primary keyword
- H2s and H3s create a logical hierarchy (not used for visual styling)
- Primary keyword appears in the first 100 words
- Primary keyword appears in at least one H2
- Content length is sufficient to fully answer the searcher’s question
- No duplicate content from other pages on your site
Links (the connections that signal value):
- Internal links to 2-3 related pages on your site (minimum)
- External link to at least one authoritative source (shows Google you’re part of the conversation)
Images and media:
- Images have descriptive alt text (not keyword-stuffed)
- Images are compressed to under 100KB each
- Image file names are descriptive (not IMG_4392.jpg)
Final check: Test on an actual phone, not just a browser resize. If the page looks cramped, loads slowly, or has buttons you can’t tap, fix it before publishing.
Monthly On-Page Audit: What to Review
Run through your top 10 pages monthly. Check for:
- Broken links (both internal and external)
- Outdated information (prices, dates, statistics)
- New internal linking opportunities (you’ve published new content since the page was written)
- Ranking changes (if a page dropped, check whether the content still matches the search intent)
- Competitor updates (see what’s ranking above you now and what they’ve added)
According to Backlinko’s on-page SEO analysis, pages that regularly update their content outrank static pages by a wide margin. This aligns with what I see in practice: the pages I update quarterly consistently outperform ones I leave untouched. One client’s service page jumped from position 14 to position 3 after I updated the pricing section and added two new FAQs. Same page, same URL, just fresher content.
What This Looks Like in Practice
On-page SEO is included in every DMS SEO engagement. In the GET FOUND plan ($2,800/mo), I optimize 20 core pages in the first month. In the GET AHEAD plan ($5,500/mo), I optimize every page on your site, with no cap.
But here’s the thing: if you’re willing to put in the work, you can handle most of this yourself using the checklist above. The complete SEO guide walks through how on-page fits into the bigger picture alongside off-page and technical SEO. And once you’ve got your pages optimized, keyword research helps you figure out which pages to build next.
Want me to audit your on-page SEO? I’ll record a 10-minute video walking through your site’s biggest issues and show you exactly which fixes will move the needle fastest. Get your free video audit.






