Technical SEO Basics: On-Page SEO Ranking Factors

Your introductory guide to technical SEO and on-page search engine optimization ranking factors

May 2, 2018

SEO can be pretty complicated but the gist is optimizing your website for increased exposure in search engines — getting to the #1 spot for your keywords.

SEO is basically broken into groups: on-page and off-page.

On-page SEO is all the technical details of your website, like page titles, headings, meta descriptions, alt tags, structured data, internal links, etc.

Off-page SEO are things like whether your website is trustworthy according to the search engines, your backlinks, where you’re located because that affects your rankings, and social reputation.

Starting with good on-page SEO gives you a solid foundation for your off-page efforts. Even though Google does what it wants, if you structure your website correctly, Google will listen and usually follow your instructions for how you want to be positioned in search results.

This article discusses the basics of technical SEO for your website. I’m going to assume you already know what your main keywords are – these are the primary phrases people will be searching for, like “Logos and branding for startups” or “Donut shop in Austin, Texas” or “Free fishing magazines”.

Title Tags and Meta Descriptions

Let’s start at the top with your title tag. This is the one that’s in the top of the browser, and it’s shown on the search results.

It should have your business name and your primary keyword in it.

Bob’s Burgers – Gourmet Burger Restaurant in Ocean City, New Jersey

Your website’s title tag and meta description show up on the search results page. This is what gets visitors to click your link.

Meta descriptions can be up to 320 characters now, previously 160. They should be actionable and contain helpful info.

Let’s say you’re selling Bob’s Hot Sauce for $10 for a 5 oz bottle. Your title tag should be something like:

Bob’s Hot Sauce – The Hottest Sauce You’ll Ever Taste.

Your meta description could be something like:

The HOTTEST Hot Sauce made right here in Ocean City, NJ by Bob’s Burgers. We start with Carolina Reapers, the world’s hottest peppers, and add our secret blend of gourmet spices from all over the world. Your eyes will water, your mouth will be on fire, and it will be glorious. Free shipping when you order 3+ bottles of the world’s hottest hot sauce right to your door.

Bobs Hottest Hot Sauce

Between your title tag and meta description, this is what gets people to click over to your website from the search results.


These are your h1, h2, h3, etc tags. Your h1 is your main page title – this may be different from your title tag, and should be written for both the user and Google. This is for your main descriptor or blog post title, stuff like that.

So if we’re on the homepage of Bob’s Burgers website, your h1 tag might be something like Handcrafted Gourmet Burgers in Ocean City.

h2, etc. headings are used to structure your content and show importance.

So on Bob’s homepage, the h2 heading might be something like Stop by and try our Burger of the Day, with text and photos explaining how Bob creates a themed burger every day.


Google indexes and serves results for image searches, and the best way to ensure you show up under the right keywords is to use alt descriptions on every single image. They should be descriptive, and include keywords when appropriate.

So back to Bob and his burgers. If we have a photo of a double cheeseburger with Swiss, bacon, lettuce, pickles, tomatoes on rye bread, that’s what your alt description should say.

Basically, if you read the alt description to a blind person, they should be able to understand what your image is. And this will help you with accessibility because screen readers read alt descriptions, so it’s much better when a user hears a mouthwatering description of your burger instead of Burger-45.jpg

Content is King

Basically, the more strong content you have, the better you are. If your website has a lot of helpful content related to your keywords, that helps you sell your product or service.

This is more for people who offer a service or sell online, and aren’t limited to a brick and mortar location in one area. It’s not usually necessary to write articles for burger joints, but it is helpful for social media managers.

Articles, tips, guides on related things, especially paired with off-page SEO, can really help improve your overall search rankings.

Now don’t get me wrong. There is a thing as too much content, especially if it’s not high quality. It’s better to have 500 words of really good copy than 1500 keyword-stuffed fluff.

Keyword Density

You want to include your keywords throughout your page content, but you don’t want to add them too much. What’s the right amount? If you search for articles on this, some places throw out specific numbers.

But honestly? I don’t really worry about the percentage.

When I write copy, I write it for people first, and for search engines second. This way I can read back over it, and see if there are opportunities to rephrase and make sure my keywords are there.

Internal Linking

Links from other websites are important — those are backlinks and a part of off-page SEO. But internal links are also important. Your main pages like About, Contact, Services, etc. those are in your navigation.

But what about in your page content and blog posts? For example, in your latest article about Instagram hashtags, you can link back to your Instagram service page.

This helps 2 ways. Your readers might click over and convert to a client. And it tells Google that your services page is relevant for that linked keyword.

Duplicate Content

Original content is best. The more original content you have, the better. Sometimes you have to repeat words or phrases and that’s fine.

But what you don’t want is to have huge sections of text duplicated in multiple places. If you do need to have an article published twice, use canonical tags to indicate the original piece. Google will help take care of the rest.


Sitemaps are super important and you need one. Your sitemap tells the search engines exactly what pages you want indexed, how often they’re updated, and how important they are.

Structured Data

Google and other search engines work really hard to understand your website contents. They crawl everywhere, following links from page to page, archiving, categorizing, ranking.

Using structured data on your website is like putting up a sign on your business that tells Google how you want to be categorized.

There are a few options like or JSON-LD data snippets.

Don’t worry, there are WordPress plugins and online generators to help you with this. While it’s technically code, you don’t have to write or edit it yourself unless you want to.

Biggest benefits of using structured data is Google uses them for rich snippets. This is how you’ll sometimes see a product’s price or the star rating on the SERP.


Location plays a role in SEO, especially for local businesses. If you only serve a few cities, you can list your service area in schema or json so Google will know your preferences.

Crawling and No Index

When Google crawls your website, they will go wherever they want. But they do mostly listen to you. You can mark some pages no-index if you don’t want Google to crawl them.

For example, if you have downloadable products or content that should be hidden until purchase/opt-in, you wouldn’t want Google crawling the success page.

Another time you might use no-index is for blog category pages. If your category archives are basically just lists of your posts, the same as your main archive page, you may want to no-index it. Especially if the content is very minimal. You can still leave it no-follow, so Google will crawl that page and go to all the articles, but it won’t index it in search results.

For most websites, leaving all your pages indexable is fine. It’s only when you want to hide content from Google, or when you’re using up too much of your crawl budget on thin pages.

So I just mentioned crawl budget. Google gives each site a budget, an approximate amount of time or pages they’ll crawl your site each day. If your site is more authoritative and trustworthy, you get a bigger budget.

Duplication is another reason you might want to no-index your category pages. The same blog titles, descriptions, and thumbnails are already on your site, maybe a few times if you have regular blog archives, and category and tag archives. So unless you’re adding extra content to those archive pages, sometimes it’s best to no-index them.

You don’t have to. If you have a smaller site, it’s totally fine to have Google index everything. Your archive pages are probably not going to hurt you.

You want Google to crawl the best pages more often.


You need one. Sorry, but you absolutely need one right now. Even if you aren’t selling anything. If you have an email signup, or a contact form, or anything where you ask for user input, you need a security certificate.

Chrome and Firefox are marking websites as UNSAFE if you are aren’t using https

It’s also a ranking factor with search engines. They won’t tell us exactly how important, but security is becoming more important every day, and I wouldn’t be surprised if sometime in the future, Google heavily penalizes sites without it, even to the point of delisting them.

Descriptive URLs

Having words and keywords in your URLS can help your rankings. It’s not super important, but it’s much better to have instead of if you’re on WordPress and haven’t set up Pretty Permalinks.

Site Speed & Mobile

Mobile browsing is huge and Google favors mobile-friendly sites. Make sure your website looks good and loads fast on mobile.

This means optimizing images, sometimes serving up smaller versions for mobile and larger for desktop. It means lazy loading when you can, defer your javascript, stuff like that.

Check your site speed using something like Google PageSpeed Insights, GT Metrix or Pingdom. It’ll tell you what you need to improve, if anything.

Take the results with a grain of salt though. For example, Google PageSpeed Insights penalize Google Analytics and Google Tag Manager scripts for not having a cache expiration — but those are analytics and you don’t want to cache those things. Plus it’s Google’s  own scripts

Another thing that’s important for mobile — make sure your elements are big enough and spaced well so bigger fingers can touch accurately. You don’t want tiny buttons right next to each other so your users accidentally click the wrong thing.

SEO Audit Tools

Okay so those are the basics of on-page SEO. Let’s talk about how to audit your website.

There are lots of tools to help you, but some things are best done by a human. Tools can tell you about the technical stuff, like your keyword density, image and meta descriptions. But they can’t really tell you the best way to write your copy, or which keywords to choose.

Keyword research can be the hardest thing, especially if you’re in a competitive space. Sometimes your primary keywords are obvious, but when you get into targeting products or long-tail, it can get complicated. That’s where knowing how to look through thousands of words to find the best ones comes in handy.

Here are a couple of my favorite tools.

Speed Tests

On-Page Audit Tools

Local – If your business targets specific geographic areas, Moz has a free tool for verifying your business listings.

Rank Tracking

The good tools like SEMrush and Ahrefs are paid, but there are a few free ones you can try like Keyword Tracker. I don’t have experience with any of them, so no recommendations on the free rank trackers.

I like Rankinity, it’s good and very cheap, you only pay for what you use.

Advanced SEO Tools

These are for more advanced SEO audits, and are a combination of tools in one app. They are not cheap, but worth it if you use them enough.

For most business owners, I wouldn’t recommend springing for these tools unless you’re doing advanced SEO campaigns and tracking your progress. Instead take advantage of their free trials and plans, or partner with an SEO like me to get monthly reports from these tools for a lower price.