On-Page SEO: Guide To Creating A Top Ranking Page

On Page SEO
On-Page SEO

On-Page SEO Guide

On-page SEO is the foundation upon which the rest of your search engine optimization methods are built upon.  I wrote this guide to help you through the process of creating a foundation that will last the long haul regardless of what Google throws at you.  While everyone else is focused on link building, look to your on-page to win the day (or at least make it so you don't have as much link building to do).

First, I guess I have to tell you a little about myself.

My name is Clint Butler and I’m a digital marketer and founder of Digitaleer LLC which is an Olympia, Washington based digital marketing agency focused on white label services for other agencies and client marketing for small and medium-sized businesses.

To date, we’ve optimized well over 200 websites for other agencies and I’ve been identified as the go-to guy for page speed optimization and on-page optimization services.

I served in the Army for a touch over 21 years and during that time I also did a lot of affiliate SEO before I retired.  I started that whole adventure in full force in 2009 and my agency has been running since 2012.

I rebranded it and came up with the name Digitaleer in late 2016.

My personal goal behind writing this guide is to help people with on-page SEO and maybe make a little money selling more of my services to a community I’m very passionate about.  After all, any idiot can call themselves an SEO, but only a pro knows they don’t know everything and will seek out those who specialize in certain things.  I’d like to think I specialize in on-page optimization.

This guide was peer-reviewed before being published.   I did this for one reason only, to prove that I’m not just telling you I “tested” something based on my own sites.  I wanted to be able to say people in the trenches doing SEO for corporations, SEO’s who are affiliated, and even SEO course sellers have seen this guide before you and have added their own insights or just gave me some edits to make in my grammar.

I want to personally thank them for taking the time to make this guide one of the few that based on a collaborative effort versus something I wrote alone in the hopes you will just take my word on the subject.

If you get the time, give those guys a big thank you if you see them around the community!


I've seen tons of guides out there that help people optimize individual pages on a website based on recommended and proven on-page SEO standards.  However, I never felt they really helped people understand the “why ” concerning the steps that they were performing.  After all, it has to be more than just “getting the on-page SEO out of the way ” in order to start building links.

These days, while links remain (and probably always will be), important we have to take a much closer look at our on-page SEO fundamentals when trying to get the most out of our content and SEO efforts.  Often times, when you take a deep dive into your on-page, you'll find those missing elements that were keeping you out of the top 3 search results.

I wrote this guide with two people in mind.

The first is the do it yourself business owner.

While I don't agree that it is the wisest decision to do your own marketing, run your business, and deliver your product or service by yourself, I get it and sometimes it's just what has to be done.  For you, this guide will walk you past all the garbage and confusing opposing opinions out there and just give you information that works.

The second is the agency owner like myself.

While training your competition isn't always the most profitable, it certainly does improve the reputation of the industry as a whole when considering that industry seems to relish in the failures of others rather than celebrate their successes.

This guide, while comprehensive, is a guide about the basics of on-page SEO.  In the very near future you will get the opportunity to get the Advanced version, supporting video, spreadsheets, and access to all of our new guides which will get beyond on-page optimization and into off-page tactics that work.

So make sure you sign up for the list below to get the PDF version of this guide and get on the list to get notified when the Advanced Guide is ready for release.  Also, join my Marketing Masters Facebook community, you'll get the link to that once you fill out the form.

Finally, I don’t know everything, if I did I sure as hell wouldn’t be writing a guide, I’d be on the beach somewhere living off interest my millions generated.  So, if you have a thought, an idea, or maybe a new way that is working and you’d like to share it with the community be sure to let me know, I have no problem adding it.

I gained the knowledge I have by earning a Masters in Internet Marketing, a Masters in Business Intelligence, taking online courses, building sites, burning sites down, and doing it all over again.  I recommend you do the same, remember, everyone has something to teach you, it’s your job to figure out how to apply it.

Standard Use Guidance

This guide is designed to walk you through the process of optimizing one page on a website for one specific keyword.  Regardless if you are doing a 10-page site or a 10000-page site, these elements apply and create the foundation for the rest of your SEO efforts.

For the duration of this guide, we are going to use the term “dog training”.  It’s popular and everyone can relate to it (even Matt Diggity used it in his on-page SEO guide so I know I can’t go wrong), and, in my offline time I am training working dogs as a hobby after training and handling Patrol Explosive and Patrol Narcotic dog teams while both in and out of active service in the Army.

This added knowledge of the market, beyond what others bring to the table, gives me a unique advantage when talking you through all these steps using this niche as an example.

Unfortunately, this is quite possibly the most boring work you will do, however, it’s almost as important as keyword research (the most important task we have as digital marketers) so put on some music and take your time.

Going through this guide keep in mind that SEO is not a cut and dry process where every single website needs the same amount of on-page work.  This guide is only just that, a guide, I have provided you everything you need to set a good foundation, however, as you will see there is much more keyword specific optimization steps that you will take for clients as your skill level grows.

Title Tags, meta description, schema etc can be added to a site in multiple ways.  For the purposes of this guide, we use Yoast SEO for 75% of the work and Insert Header and Footers or Google Tag Manager for the schema.

This is our agency preference, use whatever tool you want, it’s all going to get you the same place.

Finally, opinions in SEO are like…..

Well you know the rest of that line, this is how I do on-page optimization, someone else may be doing something else.  In the end, all that matters is your work results in increased rankings.

On-Page SEO Resources

We work primarily on WordPress so all of our guides are written with that in mind, thus all resources listed throughout are for WordPress.

As we find tools to use on other popular CMS platforms they will be added here in updates.

That said, the foundation of the work shown here applies to any CMS or pure HTML sites.

Updated Aug 29, 2017
•  Minor formatting and spelling errors

On-Page SEO Steps

Keyword Research for On-Page SEO


With keyword research, we have five steps that may be time-consuming but are certainly worth it.

Step 1:  Pick A Base Keyword

In our example, our website is going to be about “dog training”, this is what I consider a “base” keyword.

In simplest terms, it is a very broad term that gets a lot of traffic and is typically the hardest term for you to rank for.

If you are working on your digital marketing agency site, “digital marketing” would be a great base keyword.

Clients end up picking your base keywords for you right off because they have visions of ranking number one for DUI Lawyer in LA in two weeks and making millions off of the internet so this part is pretty easy.

In short, find the hardest, broadest, highest traffic term related to what your website is offering.

Also, this is the term I typically chose when looking to rank the home page.

Step 2: Money Terms

I think this is pretty straightforward, pick words that are going to make you money.

So if you are selling a dog training course, then pick the term “dog training course” (don’t pick that by the way unless you’ve got a system for ranking in one of the hardest niches there is, it’s just an example).

But, some buyer keywords for dog training courses might include

  • High Energy Dog Training Course
  • High Energy 30 Hour Training Course
  • Dog Training Course Near Me
  • Dog Training Course Houston

If you’re an affiliate selling dog training courses on your site then all these terms could be added to make your money pages.  These are several of modifiers you can add to your keywords to target buyers, here a few that we use regularly when doing our keyword research:

Product Review Keywords

  • Reviews
  • Just Released
  • Pre-Order
  • Just Announced
  • Announces
  • Review
  • Reviewed

“How To” Keywords

  • Best for list building
  • Hide solution behind a squeeze page
  • Then provide a solution via a link to offer

“For Dummies”

Branded search for “how-to” queries

Product Name Keywords

  • Model Number
  • Brand

Celebrity Terms

  • Take note of celebrity endorsements in offline marketing
  • People remember celebrity endorser name, not necessarily product name
  • Example: Nikon 1 camera, “Ashton Kutcher camera” = big search volume
  • Also combine with Nikon 1 camera reviews, etc.
  • Celebrity name + weight loss keywords

Does “Product Name” Work

Does “XYZ” Really Work

Does “XYZ” Actually Work

Where to Buy
Where to Find
How To Buy

Step 3: Pick Support Terms

These words are going to be in what is commonly known as long-tail keywords and we like to put them into two different categories.

Informational Terms:  These are the words that will bring you most of your traffic.  However, it doesn’t convert that well because people who use them are looking for information.  They might know about your product and know it’s used, but they might want to just find information about a certain aspect.

For instance, “How To Train Your Dog To Sit”; this is an informational term and the person who is searching for it is most likely a DYI type that just wants to teach their dog this one specific thing.  They probably don’t have or want to spend, the money on a dog trainer.

These terms are great for supporting your money pages.

We pick 5 informational terms to write content about for each money page on a website.  Those five are then interlinked and link directly to the money page they are supporting.

Navigational Terms: Typically, these terms pick up after you have established your brand.

Examples include:

  • High Energy Dog Training
  • High Energy Dog Training newsletter
  • Dog Training with High Energy
  • highenergytraining.com
  • High Energy Dog Training Houston

Step 4 Market Research

This is going to be more important in local SEO than it is in national work, however, it’s still important for both.

For local, you want to search around in your city using the terms that you found for your money keywords.

What you are looking for are the following:

  1. Same sites showing up for multiple terms
  2. Directory sites
  3. What are the sites using for conversion, do they want phone calls, email sign-ups?
  4. What other services are they offering?  More money site keyword opportunities for you.
  5. What are their metrics? i.e. TF, PA, or DR (I’m an AHrefs metrics guy myself but use whatever is valuable to you.
  6. What is their average page speed?

SerpWorx helps with all that information because it’s a toolbar you can use on the fly both in the SERPs and on the actual sites to get all that information, HIGHLY recommend that you get it.

Step 5 Individual Keyword Ranking Factors

This step is a bonus step that 99.9% of SEO’s don’t do yet, so you are about to set yourself apart.

We are going to leverage a software called Cora for this step.

I’ll get this out of the way right now, this software costs $250 a month, a little less if you use my affiliate link which has a built-in savings coupon: Click Here.

Or, you can get your reports from me for $97.

That will get you 10 reports, a video on how to read the darn thing, and I’ll hide everything that you don’t need so you can get right to work.

Buy your 10 reports here: Optimization Reports

If you are running an agency and have a lot of clients, get the software, it’s going to make you a hero.

Anyway, this is what it spits out:


I’ve run the report on the keyword “Dog Training Course” which as you know already is really competitive but it’s a great example term for the purposes of this guide.

In the report in the orange, you see all the things the correlate for this specific word in the search results based on 500+ on-page and off-page factors.

Now all you need to do is address those factors when you are doing your on-page work and then when you are building your links.

Again, I know that there are maybe 60 SEO’s worldwide using this software right now, so join the club, the thing works.

Domain Names

Typically, if you are at this stage you are already helping a client that has a domain name purchased.  Having this information will help you in with URL optimization, so don’t skip it.

There are two categories of domain names that you are going to see and this information is important because you don’t want to over-optimize the URLs.

     1.  Brand Name Domain name:  

In this instance, the domain name is something that is considered brandable, i.e. Google, Amazon, Digitaleer, Archangel Kennels, etc.

For new websites, we recommend that owners go with a brand name domain because it’s easier to create the silo’s (you’ll learn more about that below) because you can manipulate the URL’s with keywords without worry.

If you are a beginner to SEO, start with a brand name, they are more forgiving to on and off-page SEO mistakes.

Also, brand names give you the ability to diversify your offerings.

If you are offering basic obedience training, for example, and you use an EMD or phrase match domain you’ll get narrowed into that specific area of the dog market.

While a brandable domain like SouthsideK9.com opens up training, boarding, grooming, products, and much more.

If you are creating an affiliate site, however, a PMD or EMD would be a better option if they are available.  Also, unless you’re trying to make the next Amazon, with e-commerce you should start your search looking for PMD or EMD domains.

     2. Partial Match Domain:

If I was building a dog training site today this would be the type of domain that I would use.

Basically, with a partial match, you are combining a keyword with another term.

  • Dogtrainingwashington.com
  • Washingtondogtraining.com
  • HomeboyDogTraining.com
  • DogsKickAss.com

Those are all examples of what a partial match domain would look like.

One thing to note with PMD’s is that you don’t need your whole target keyword in the domain for it to be considered a partial match.

Secondly, you can do more with these types of domains in the URL structure and anchor text than you could with an EMD, meaning over-optimization is a bit harder.

     3.  Exact Match Domain:

For our keyword, dog training, this would be the holy grail domain that we would want, however, I couldn’t pay the price that the domain would command even if I wanted to.

There have been conflicting stories behind the EMD for quite some time in the SEO community.  As a matter of fact, it wasn’t that long ago that mainstream SEO’s were advising against using them altogether.

This stems from the fact that while EMD’s do get a noticeable boost in the search results, they are much easier to over-optimize both on and off-page.

Old exact match anchors that used to rank them like gangbusters now become a liability if abused, so the mainstream SEO suggests avoiding them.

Knowing all that now, I would still recommend that people try to find an EMD domain for their business IF they can turn that same term into a brand.

Also, if you are in e-comm and selling one specific type of product and know for sure you won’t expand, then buy the EMD.

Finally, if you are an affiliate and have the opportunity to get an EMD for a particular product, then go for it.

Note:  If you are buying an EMD for a product, make sure the name is not trademarked, you could be forced to take it down.  But if you are making an affiliate store for digital cameras then digitalcameras.com would be a great option.

Page Speed Optimization for On-Page SEO

All the work you are about to do won’t mean a thing if the site is loading slower than 3 seconds.  If that is the case you really need to tackle the page speed optimization first.

If the page is loading faster than 3 seconds, go ahead and move on to the next section unless you’ve been tasked to complete this work now as well.

This guide walks you through using W3 Total Cache, I can optimize a site better with this plugin than any automatic plugin like WP Rocket or Autoptimize around 95% of the time.

The only two exceptions to this are:

  1. LiquidWeb Storm servers, these servers are pretty good and WP Rocket handles them very well.  Typically, you can use WP Rocket and see the same or better results than W3 Total Cache.
  2. WP Engine (or other Managed WordPress Hosting) these services strip out W3 Total Cache because people generally don’t know how to set it up to not conflict with the server-side caching they are doing.  And while I have found that most managed WordPress hosting is garbage, at least WP Engine made it so WP Rocket works properly on their servers with a bit of setting optimization.

Keep in mind that the W3 Total Cache plugin is not some install and done tool, you MUST adjust the settings then test your site in INCOGNITO mode before calling it good.

Also, after each change, you have to clear the cache in the plugin.

If you are using Cloudflare or intended on doing it, DO NOT use the W3TC Cloudflare extension, it’s a waste of time and added code while providing you zero value.

I learned how to get the most out of this plugin by testing for HOURS on my own sites and then finally creating a page speed optimization service (coupon code: Loyalty75) so if you’ve had bad experiences with caching, Minification and much more this guide will certainly help, but I recommend a pro (like us) unless you have more time than money.

  1. Open the website in two separate tabs
  2.  You are opening the site in two tabs.  One tab you will use to log in to the site.  The other tab you will use to compare with the site AFTER everything is optimized.

There will be a lot of clients with hidden pop-up’s, fancy sliders, etc. that will potentially break on you during the process.

Following this step will allow you to identify that quickly.

  1. Open the Site Speed Template Excel File
    1. You will find that here: https://onedrive.live.com/redir?resid=3DE3995D6EC92E0D!1778&authkey=!APxVy3yECYRCJc8&ithint=file%2cxlsx
    2. Save a new version of it named “Site Speed (Client Name)”
  2. Test the site to get a “Before” page speed
    1. Use this site: http://tools.pingdom.com/fpt/
    2. Make sure in the “settings” you select the proper location closest to the target market.  When in doubt, choose Dallas, TX for US sites; Melbourne for AU sites; Netherlands for EU sites.  As long as you don’t refresh the page (or a random error) it will retain this setting until you are done.

Note: Pingdom, on rare occasions, will show you selected Dallas, for instance, and then test from Europe or Australia, make sure you watch out for it.

Note:  We don’t use Google PageSpeed Insights for our testing, nor do we show it to clients, that tool is UTTER GARBAGE and provides you with zero useful information beyond that your page is working on mobile.  The tool will even lower your scores because of GOOGLE properties.  Finally, Google PageSpeed was a product they developed to “hopefully” speed up the internet, every site I put on it got significantly SLOWER and Google finally killed the product altogether because they are not good at page speed optimization.  Page Speed Insights is the only tool that remains, and in my opinion, the only reason it still remains is because of their focus on showing sites on mobile devices faster.

  1. Enter “before” page speed into the spreadsheet
  2. Copy the test page URL into the spreadsheet
  3. Check for image optimization plugins
    1. For clients, we use one of three options
      1. EWWW Image Optimizer
      2. WP Smush
      3. WP Smush Pro (preferred and best)
    2. Some clients may be paying for EWWW Cloud or Krakken.io
    3. If no image plugins are installed, add the appropriate one.  If one is installed, we are done with image optimization.  We don’t want to use their credits or waste time optimizing images twice.
    4. Once the plugin is added, use the bulk optimize tool to process the images already on the site.

Note:   If you are using EXIF data on your images you need to make sure this box is UNCHECKED or you WILL strip out the geodata.  MAKE SURE YOU DOUBLE CHECK BEFORE OPTIMIZING,  A LOT OF WORK GOES INTO OPTIMIZING IMAGES AND WILL THEY TEND TO GET PISSED IF YOU DELETE IT ALL.

image optimization
EWWW Image Optimization Settings
  1. Check for cache plugins
    1. We will be using W3 Total Cache for all of our optimizations.  This is by far one of the most well-known, and misused, plugins available.    It will conflict with other cache plugins so check for any in the installed plugins list.  The only ones that are safe to keep activated are “lazy load” plugins.  Otherwise, deactivate any that you find.
  2. If the client is running their site on WP Engine they have been advised in the sales letter to purchase and install WP Rocket.  They are supposed to have that installed before you get started.  You’ll be notified if this applies when you are initially assigned the task.
  3. Install W3 Total Cache
    1. Install W3 Total Cache and enable “Edge Mode”.  There will be a message right on top of the screen when after install asking if you want to do it.
  4. If Yoast SEO is installed, activate the extension.  You will have to use the left menu to activate it, don’t use the message on top or you will get an error message.
  5. Browser Cache Settings
    1. Use the image below to identify which boxes to check, this is the default for all client sites.
Browser cache settings
  1. Page Cache Settings
    1. Use the image below to identify which boxes to check, this is the default for all client sites.
page cache settings
  1. Object Cache
    1. Leave the default settings.
  2. Database Cache
    1. Leave the default settings
  3. General Settings
    1. Enable Page Cache, Database Cache, Object Cache, and Browser Cache.  Leave the rest of the settings set to the default.  Do not turn on to enable Minify.
  4. Test Website to ensure caching didn’t break theme
    1. This happens more than you think so don’t skip this step or you will waste a lot of time chasing errors when doing minify.
    2. Use the “Empty All Cache’s” function in the Admin toolbar.
    3. Use a new “Incognito Browser” window and open the home page.  Compare it to the tab that you opened when you first started.  They should look the same.
    4. When looking at the site in “Incognito” you have to close the window completely to see the current version of the site, this is due to Browser caching.  If you don’t do that, you will think the site is fine, or broken, when in fact it’s the opposite.
    5. If the site is broken shut off Page Cache, make a note on the spreadsheet, and test in a fresh incognito browser.
    6. Test the Page Speed in Pingdom (you already have it open, just click the test button), it should be faster.
    7. Once you are satisfied the site is working properly, move on to Minify.
  5. Minify Settings (First Step)
    1. If things are going to break, this is when they start.  Don’t get frustrated, it just happens.
    2. First, go to this URL and enter the home page URL: http://wp-rocket.me/tools/wp-rocket/debug/minify/  Keep that tab open, you might need the info later.
    3. In the minify tab, turn to enable HTML & XML minify by checking the “enable”, “Inline CSS minification”, and “Inline JS minification” in the image.
    4. UNCHECK enable in the “JS” and “CSS” sections.
    5. Save the settings, then move to the general tab and enable minify.
    6. Clear ALL CACHES
    7. Check site in a new incognito browser window, if not broken, move on.
  6. Minify Settings (Second Step)
    1. On the minify tab, enable JS to minify settings, leave it set as the default for now.
    2. Enable CSS, leave the rest of the boxes unchecked.
    3. Save settings, clear all caches, check the site in a new incognito window.
    4. If site not broken, check page speed in Pingdom.
    5. IF broken, uncheck JS or CSS enable (doesn’t matter which one, we are testing), save settings, clear all caches, check the site in a new incognito window.
    6. IF broken, uncheck other option, save settings, clear all caches, check the site in a new incognito window.
    7. IF you unchecked JS and it fixed the site, go the wp-rocket tab and copy all the items listed in the JS box.  On the minify tab on the client site, add that information into the “Never minify the following JS files” into the box.  Save settings, clear all caches, check the site in a new incognito window.
    8. IF you unchecked CSS and it fixed the site, do the same as above, however, place the info from the WP Rocket site into the “Never minify the following CSS files”.  Save settings, clear all caches, check the site in a new incognito window.
    9. If you have added to both “never minify” boxes and site the is still broken, turn off minify, notify project manager and move on to a new client.
    10. If the site is working, test page speed, move on to the next step.
  7. Minify Settings (Final Step)
    1. This step is mainly to squeeze the last available speed that we can get without over-optimizing and causing potential issues.
    2. Go to the minify tab and under the JS settings, switch the Embed type from its default setting to “defer”.
    3. Save settings, clear all caches, test in an incognito window, then test page speed.  If faster, you are done.
    4. If slower, go to the same box and switch the Embed type from defer to “async”.
    5. Save settings, clear all caches, test in an incognito window, test page speed.  If faster, you are done.
    6. Pick the setting that produces the fastest load time.  Once you are satisfied the site is loading as fast as possible move to the last step.
  8. Open your excel sheet
    1. Enter the new page speed in the after column.  Enter the test results URL for the new test as well.
    2. Add any comments as needed about issues you may have found with the site.  i.e. slider images too big, too many videos, site security issues.
  9. Mark client complete in Project Management dashboard

         a. Upload spreadsheet as an attachment

Note:   I spend weeks figuring out the correct optimization settings for W3 Total Cache and WP Rocket on a variety of different hosting environments and themes.  YOU ARE GOING TO BREAK YOUR SITE, just accept that it's going to happen and it's part of the process.

Note:  Always check your changes after you have cleared all of your caches and do it in an incognito browser.  Close the browser each and every time you check, otherwise, you'll be looking at the browser cached version of the page and won't see broken (or fixed) elements on your site and will be fixing or breaking things that didn't need to be changed.

Silo Structure For The Best On-Page

There are a few hundred different ways to build a silo on your site, however, we have a preferred method that we use on all our builds that just works for us.

A little research and a lot of experimentation will help you decide what’s best for you.  Often times though, you’ll be working with a site that is already established and you don’t want to mess with URL structure to change or implement a silo, so this method works well.

First, all our silo’s start with a money page that is designed to generate some type of conversion.  Keeping with our dog training example we’ll say, for the sake of argument, that this is our money page:


Our next step is to create a category (using WordPress this is simple, but if you’re making a pure HTML site you can skip this step).

The category will be “Dog Training”.

Now, use the slug /dog-training.

WordPress might add a number at the end since you already used it for the page, that’s ok.

Next, use any 301-redirect tool you want to redirect that category page to your money page.

We use Yoast Premium to do it, but Simple 301 Redirect will do (you can do it in your .htaccess file as well if you’re comfortable with that) for this.

Now, every time you write a supporting piece of content for your money page, the URL will have /dog-training/post-title.

In order to set this up, use the category/post option in your Permalinks.

That’s all there is to it, nothing complicated, and it’s a great way to build your sites.


You’re URL is the first thing that Google finds, obviously, so this is your first chance to tell the algorithm what your page is about.

Typically, if you are doing client work, you have to work with the URL’s that you were given.

However, there will be times when clients will let you change URL’s to better optimize the entire site.  Hopefully, at that point when the site is new and won’t do much to current rankings positions.

Pro Tip: If the site is established the clients need to know that any changes in URL’s will eventually change rankings positions, hopefully for the positive, but bounces are to be expected.  Being clear on that from the beginning will save you a lot of trouble.

Brand URL’s are pretty easy to deal with for the most part because you don’t have to worry too much about over-optimizing like you would with an EMD or PMD domain name.

  • highenergy.com/dog-training
  • highenergy.com/dog-training/using-a-clicker
  • highenergy.com/dog-training/teaching-puppy-sit

Notice that I didn’t use stop words in that last example.

“Teaching a puppy to sit” is the actual keyword, but Google ignores stop words like “a” and “the” so you don’t have to add them to the URL.

WordPress will add those to the URL by default, so I recommend removing them just to keep your URL’s as clean as possible.

Exact and Partial match URL’s require a little bit of creative thinking on your part.

Again, only because they are a bit easier to get into over-optimization if you are not careful.

Bad example:


Both of the examples above use “dog training” too much, and while only a couple pages doing that won’t necessarily hurt a site, the more content you add the deeper a hole you’ll dig yourself into.

Good examples:


You’ll notice in the last two examples I used the category slug as well.  For my set-ups, that category slug (i.e. dogtraining.com/patrol) doesn’t go back to the category page.  It is redirected to a money page about “Patrol Dog Training”.

Again, URL’s are important but don’t get wrapped up about them.

When making them just keep these guidelines in mind: shorter is better and don’t go nuts with the keyword stuffing.

Title Tag

title tag

All of our tests have shown that the title tag is the number one ranking factor for on-page optimization, yet it’s the simplest to do.

There are a couple of things to consider when creating your Title Tags.

  1. Have your keyword up towards the beginning
  2. Have you Title Tag and your H1 tag be the same thing (most WordPress themes are doing this automatically, however, there has been a trend in newer themes to have the title be an H2 tag, so check it on your page, don’t assume).
  3. Make your title tag enticing to get the click.

Having your keyword up in front of your title has long been a standard search engine optimization standard.

That’s why you see a lot of title tags like this:

Dog Training | High Energy Kennels

With this example, your H1 tag would be “Dog Training”

Pretty simple, right?

I want to take this time to address branding a bit because it’s relevant at this point.

Basically, with the title tags and the way I set them up for a business, this is where building a brand begins for a digital marketing campaign.

Dog Training (Keyword)| High Energy Kennels (Brand)
Roofing Contractor | ABC Roofing
Dentist Houston | We Love Pain Dentistry

When you have terms that you MUST target that exact term and don’t want to make clickbait type titles for that page, then the above method is the way to do it.

Doing it this way you optimize specifically for that term and build your brand and brand relevance to your target terms within Google.  Essentially, you're putting out a big damn neon sign to Google saying these are my main topics.

For your informational content, I like optimizing for the keyword and the click.

Let me show you some examples:

Dog Training At High Energy Kennels Gives You Wings
Dog Training: Bring Home The Ultimate Dog
Dog Training: 15 Ways to Not House Training Your Puppy
101 Dog Training Tips for Your New Shelter Rescue

In all of those examples you’ll see the keyword is towards the front, but what about some long-tail examples:

How to Train Your Dog to Sit? • High Energy Kennels
How to Train a Dog to Release A Wrap? • High Energy Kennels
How to Train for Hot Weather Long Distance Tracking? • High Energy Kennels
Where to Find the Best Organic Dog Food? • High Energy Kennels

Notice that I did the branding with those as well, you have 56-60 characters depending on what the SERPs are showing that day for any given keyword so use them all.

In local, you can even do this:

Family Dentist Dallas • Call (453) 876-9879 • Appointments Available

That might be a little long, I didn’t check it, but you get the idea.

Phone calls are what they want anyway so why not throw the number right there in the search results and save the searcher a click!

Meta Description

meta description

As far as Google is concerned the meta description is not used as a ranking factor, or if it is, it’s so low on the importance scale it might as well not count.

However, there are some on-page SEO uses for this and each page should have its own unique meta description.

As a general rule of thumb, you’ll get space here for about 160 characters.

In the image above you’ll notice that Google is actually showing a lot more than that, your keyword research will tell you if you can add more or not.

A safe practice, stick to the 160 character limit and save yourself a headache if Google wants to add more it will pull it right off of your site anyway.

When writing your meta descriptions use your keywords and sprinkle in some related words.  Also, I typically put in a call to action to make sure I use all 160 characters.

That looks something like this:

Dog training at High Energy Kennels is our passion.  Call us at (555) 555-5555 today for more information.

That’s probably not 160 characters, but you get the point, you can use a call to action for phone calls or generate clicks.

Yoast SEO and most other on-page SEO plugins will have a character count inside your title and meta tags fields, but just in case what you are using doesn’t use this tool:


I like using that tool when I’m playing around with title variations or writing multiple meta descriptions, but that’s really a workflow thing.

Note:  Have you ever done a search and had Google bold a bunch of terms in the listing meta descriptions?

Those are called “match type” terms and in your keyword research if you see some of those make sure you write them down.  They are great additional words to add to your content or meta descriptions.

Header Tags

First, if you are going to have a lot of informational content then install a Table of Contents plugin.

This is the one we use: https://wordpress.org/plugins/table-of-contents-plus/

That plugin will use your H tags to structure your table of contents which builds some internal page links for your site and makes it easier to get around a big piece of content.

Next, you want a structure

Every site should have these four H tags

  • H1
  • H2
  • H3
  • H4

Ideally, you only want one of each on your site, however, that’s really a suggestion versus a rule.

Our local sites, we stick to that and it serves us well.

Informational content will end up using more.

H1 – This tag should have your exact match keyword in it.  Ideally, you’ll want this to be the same as your title tag, however, oftentimes that just might look dumb.

Information content it’s easy, local sites, not so much.

Example:  How to Train Your Puppy to Sit

H2 – This one will have your terms in it but separated from each other.

Example:  Training A Puppy with A Clicker to Sit

H3 – This one is using some “match” keyword terms.

Remember when I told you to look for the “bold” terms in the search results, this is where you use them.

For our term, this is what Google suggested

Example:  Teaching A Puppy to Sit on Cue

H4 – We are using a phrase match or exact match version of the term here.

Example:  Now You Know How to Teach a Puppy to Sit, What’s Next?

You can really go down a rabbit hole with these tags, but those four should be your minimum.

H5 and H6 tags can be used as well, however, in our testing, we saw no value in having them or not, so these will be helpful in your longer content piece to create a better table of contents.

Just remember, don’t use anything in the H tags that will take away from the topic focus of your page.

Word Count

The longer your content is, the more opportunities you have to rank for more long-tail terms, however, let’s not kid ourselves.

There is only so much one can write about being a plumber in St. Louis.

So, for our work, we have two different scales we go by.

First, informational content, since you are explaining a concept, idea, or method these can be easy to write.

When we do, we aim for 1300 words.

I know, I know, that sounds like a lot, however, if you get Dragon Dictate (Dragon Naturally Speaking for your Windows users) then talk out your topic you will be amazed how easy it is to write a piece of content that long.

If you have clients that need content but can’t write, then send them a digital recorder to talk out some answers to questions, then get that transcribed, content is done.

Second, local content, this one is tricky because if you notice the pages on your search results probably don’t have a lot of content on them.

In this case, we do a word count for the top five, find the average, write that amount then do a paragraph more.

Again, not rocket science, we just want to know where the minimum is.

After you have the page up and it’s fully optimized, you can go in and add if needed, we’ve never had to delete.

Keyword Density

Keyword Density doesn’t matter, just write your content out naturally”

We’ve all heard it before, and to some extent, it's true, however, if you look at the competition in the search results you’ll see that keyword density is playing a part.

What you have to do is look at the top ten pages in the search results and figure out the keyword density of each page.

Then you figure out the average percentage that Google is looking for with respect to that particular term.

Then beat it by .5%, that’s it, easy right.

For example, let’s say our terms average density is 1%, we want our site just above that at 1.5%.

On a short piece of content that’s easy to do by just adding one more instance.

Again, I didn’t pull this number out of a hat, we’ve tested it with several terms and when combined with everything else we’ve talked about, it works very well.

Match Terms

When you do a Google search the search engine bolds keywords in the meta descriptions and URLs of the search results.

Those words are called matched words and Google directly relates them to the search term you are optimizing for.

These are terms that should be in your content if you can fit them in.

Interestingly enough, Google has started bolding names of people and brands in the search results because those people have done a good job establishing their semantic relevance to the search term.

By adding these match terms to your content, you’re working towards doing the same thing.

LSI Terms

“LSI keywords. These are essentially keywords related to the keywords that you are searching for, and Google does this by using a system known as LSI (Latent Semantic Indexing). In a nutshell, it is based on user search patterns and behavior, how one keyword search is usually linked to another keyword search (SEOPressor.com).”

In layman’s terms, Google looks at billions of pieces of content and ‘learns’ what words are typically used in a piece of content about any given topic.  These words can typically be found to be used to a similar degree regardless of who wrote any given piece of content.

There are several tools out there that will give these tools used in frequency and offer suggestions of how much to add.

Now, this is probably the last thing you need to look at because if you just take the time to write a quality piece of work you’ll hit most of these words anyway.

But if you seem stuck and just want one more piece of the puzzle then you can’t really go wrong with optimizing LSI terms as well.

Also, don’t confuse these with terms that are “similar in meaning” as your main keyword, those are the match terms we addressed earlier, these are different and not necessarily related to your keyword in any way.

Here are some tools we’ve used for LSI research, all have their plus and minuses so pick what works best for you.

Our default: Website Auditor from SEO Powersuite, it’s tool also tells you which words to remove.

Others include Cora, ntopic, and Text-tools.net

Structured Data – Organization

All websites need to be leveraging this piece of the schema.

Essentially, you are making properties on social media and citation sites to establish your brand.  This helps you do that in the eyes of Google and is the beginning of the establishment of your brand entity.

REMOVED Schema to update it

Structure Data – Local Business


This particular piece of data is helpful for local area businesses in order to establish a service area, location of offices, and office hours.


Google uses this data to power the Google Maps system and the knowledge graph in the search results which normally shows up for brand and brand navigational search terms.


Here is the list of all the types of businesses you can use this for:  Click Here


Here is the JSON-LD template for Local Business.

Removed schema to update it

Structured Data – Product


Here is the JSON-LD template for e-comm product pages, this has to be unique for each product page.


If you find a smart developer who can code your site to auto-populate the information in here then you're good to go, but if you have a smaller site or add products infrequently being able to drop this manually works too.

Removed schema to update it

Structured Data – Reviews


Google has been handing out manual penalties left and right to people who are using schema to get the review stars showing in the search results sitewide using this line of JSON-LD:

Removed Schema to update it

That piece of the schema is in the local business template discussed earlier and should only be used money pages.


Also, when you use that on a money page you need to display the reviews.   So I take screenshots of my reviews and put them on the money page.


I also have a form on the page to collect reviews, another requirement per the terms of service.


However, Google reps have also said that you can simply link to third party sites to collect your reviews and be in compliance as well.


But, we also want those reviews to be represented in the schema to ensure we don’t run into manual actions, plus it’s a great way to get some more relevancy in your code.


So, with the help of some reverse engineering and a heads up by a great SEO I know, like, and trust we came with this:

Removed schema to update it

The time-consuming part of this is that you should do that five times for each money page, so you’ll have five instances of that on each page.


Again, since you’re only doing it on the money pages, that’s not bad when considering the peace of mind and extra CTR boost you’ll get from the stars showing in compliance with the Google Webmaster Terms of Service.


Outbound Authority Links


Ok, so I am about to pass on some information and you might think I’m crazy, but trust me this works.


When it was figured out that outbound authority links helped with on-page optimization and ultimately helped to boost ranking people started talking about adding outbound links to authority sites.


The number one fall back ended up being Wikipedia, so much so in fact, that people eventually warned against using it because Google would (supposedly) consider it a spam link.


Anyway, we actually turned that concept on its head and started linking out to sites that were related in the market and local to our businesses.


For example, lets you own High Energy Training located in Houston, Texas.


You should find local sites selling dog food, local pet stores, even other local area trainers to teach stuff you don’t want to do.  Now, you are not only establishing yourself in the market, but you’re also establishing yourself in the locale you are working in.


The same concept works in national terms.


Say you’re an affiliate writing product reviews, in this case, link to a couple of other reviews of the same products or maybe even link to “like” products.


Just make all your outbound links rel=nofollow and you are good to go.


Note: I only add rel=nofollow if I’m linking out to direct competitor if you're linking to like businesses you don’t compete with share then leave it dofollow and get the karma points.  You could also reach out to the other business with a short email and tell them you linked to them, you might get one in return.


Image Optimization for On-Page SEO


There are a couple of schools of thought concerning image optimization and the use of EXIF data so I will address those last.


When you create your images or use stock, make them the minimum size needed for your theme.


So, in my case, 1280 x 720 displays well in my posts and the social plugins I use to like that size.


However, I also upload a separate image at 420 X 240 for my featured image.  This is the size it needs to be in order to show up correctly in my related posts and on my blog page.


Knowing that will save you a lot of time when looking at page speed issues because now you know your image size isn’t the problem.


First, name your image files with either the exact match keyword or with one of the match terms you found during your keyword research.


Next, when you upload you’ll get the option to change the title, most often times this won’t be necessary if you followed step 1.


Next, use that same keyword in the ALT text.


Next, use that same keyword in the description.


Finally, use that keyword in your caption box but with other words as well.


i.e.  Dog Training with Sadie at Superdome


Ok, so now we are at the choice to EXIF or not to EXIF.


The theory behind using EXIF data is that if you images show your name, address, phone number, and geolocation you’ll have a better chance at showing Google that your business is worthy of ranking in the maps.


It’s actually a sound theory, however, you are leaving a lot of data on your images that otherwise doesn’t need to be there.  After all, Google (and most sites for that matter) strip that EXIF data out when you upload.


So, best practice for me on my own website is to strip it out on every image and use those images on other sites like Flickr where they keep it.


The only exception to that is if you are going to use the image URL on your site to embed that image on other sites.


In that case, leave the EXIF data on your image that you intend to share and it will get read.


Not only are you getting a backlink to the post the image is on (assuming you set up Yoast to do that), you’re also getting the EXIF data to read every time that other page gets read.




When I first gave out this on-page SEO guide to some of my peers for review I was given one word to describe it: overwhelming


To tell you the truth I have to agree.  While on-page SEO can be described in a simplistic way, which is how most guides do it, you lose the nuances of each element and how you can leverage those to gain just one more spot in the search results.  Proper on-page SEO can significantly reduce the amount of effort to spend on off-page SEO.  Some SEO‘s will overcompensate for poor on-page SEO exposing themselves to greater risk from the Penguin or Panda algorithms.  Many times the answer isn't “more links” its “optimize your page”.


For me, On-Page SEO has always been a passion (ok, obsession), but if you get it right, if you take the time to do those things that other people won’t you will see plenty of rewards for your efforts.


I hope you enjoyed this guide, I hope you download it and pass it to your teams, I hope you use the spreadsheets and tools that I have offered or recommended, and I hope you realize some great successes with your on-page SEO efforts.



    1. Have been looking for a comprehensive guide for setting up W3 Total Cache in WordPress for awhile and this is easily the best I have read to date. Thanks for the detailed guide 🙂

    2. Hi Clint,

      First off just want to say great guide. I had a quick question. Say my keyword is best lawyer, and i end up with 1.5% kw density for that page for that keyword. Would I also apply this to other keywords that include best lawyer on that page? So Best Lawyer Boston, Best Lawyer near me, etc. Thanks

      • When calculating exact match keyword density all combinations of those two words would be counted in.

        best lawyers
        very best lawyers

        Both instances of the two words together would count.

        Now you can manage that by using “best Austin lawyer” and that wouldn’t count, but you’ll still get the relevance, this is where “match” terms idea using bold keywords from the search results comes into play.

    3. Avatar for Clint Butler Stephen Grealy : August 11, 2017 at 4:00 am

      Hi Clint,

      I have read from back to back and it’s the most up to date On page SEO training on the planet. I reviewed this product having 15 years experience in SEO and you won’t find a better resource 60 pages of knowledge step by step and why you need to do it. Doesn’t matter if you a newbie to the web / SEO or very experienced – you need this!

    4. This guide is completely on point, thank you so much for giving away free gold. Much appreciated!

    5. If I have 10 images on a page should I optimise all of 10 of them for the one keyword? Won’t it look suspicious to google if the alt texts read “lawyer chicago” “best lawyer chicago” “affordable lawyer chicago” “good lawyer chicago” etc.

      • Look suspicious? I don’t think so, however, with 10 images you probably over did it.

        Throw other variations in place of half of them. “Lawyer in Chicago” “Chicago’s Best lawyer” “Great Chicago Attorney”

        • Got it. Thank you. Another question since you have been so indulgent with our questions.
          After configuring W3 total cache once, do we need to do anything periodically within the wordpress dashboard to ensure that it is functioning properly?

          • You should check to make sure the site is working properly after every update of plugins or the themes, but that should always be a standard practice anytime. As for W3 settings changes, typically once you do it once you shouldn’t have to change anything unless you change host and/or theme.

    6. This is really helpful. It’s so brief for OnPage SEO. Fully recommended 🙂 Thanks Clint

    7. Thanks Tan, glad it helped.

    8. The On-Site SEO Bible! Great job buddy.

    9. Jesus Christ Clint this thing is a god damn mammoth! Nice work man

    10. Hi Clint,
      Thanks for the excellent Onpage guide. I have a question about related posts. Do these affect the Onpage SEO? Should they be closely related to the keyword theme in the current post for them to work well?

      • Typically, depending on the tool you are using to create them, will show the posts from your category (this is great if you set up category’s like I do). That essentially helps with your internal linking and is a great benefit to users who might not convert on one piece of content but do on another. So, in general, I recommend them as a best practice for your blogs.

        • Thanks very much for the reply Clint. That makes sense. Appreciate you taking the time to explain how to get the best from internal linking.

    11. Solid guide Clint! Is there a specific reason you split the schema data?

      • Organization and Local Business schema are two different things/types (top level schema) so I like to keep those separate by default. Review schema can no longer go on every page like it used to be before (unless you just want to throw it on and just change it after you get a manual penalty notice to remove it) so that’s why that is separated from the other two.

    12. This is awesome! Already sent it to my VA to start adding some things to our processes.

    13. Hi Clint,

      I was looking for such a comprehensive guide. But still I did not comprehend how to do speed optimization. Looking forward to ordering your service. Bookmarked

      Many Thanks

    14. Avatar for Clint Butler Giovanni Benavides : October 9, 2017 at 8:39 pm

      Great guide. Much appreciated Clint.

    15. Awesome guide thanks Clint.

      My blogs page load speed went from 5sec to 1.1sec following your advice. BTW seems the w3 setting images are broken, they’re pointing to your personal blog https URL which isn’t working.

      Thanks anyways…really appreciate it!

    16. Hi,
      Excellent stuff!
      yes, using the main keyword on the title, placing title into tag, using relevant content, interlinking, meta description optimize these are really essential for on-page SEO. Also, image optimization, page load time increase, checking broken links, 404 error fixing, mobile optimization these are also very important for on-page SEO and dragging huge amount of visitor to a site.

    17. I was just searching for how to implement keywords in H tags and how many times to use the exact keywords in heading tag. Your perfectly described information guided me to use it. Thank you!

    18. I went from http to https w the ssl and now need to update the links. What is the best/easiest way to do this?

      • You are using WordPress, so install “Really Simple SSL” then click the green button after you activate it. That will take care of the change over for you.

    19. Very comprehensive guide. If I switch from http to https or vice-versa, will I lose rankings? I activated a plugin called really simple ssl a few days ago and I think I lost some rankings?

      • Avatar for Clint Butler Clint Butler : July 10, 2018 at 5:02 pm

        When switching to https its natural to see a little loss in rankings over the short term, however, typically they come back in the same spot or better after a while.

    20. Great guide, do you have any tips for reducing website’s bounce rate? Also, what’s your take on internal linking?

    Leave a Reply

    Your email address will not be published. Required fields are marked *