Specifically, when we speak of on-site SEO, we are talking about all the little details your website contains that communicates exactly who and what you are to search engines. Here is a detailed list of what that entails:

All your website content – pages, blogs, articles, etc.

Title tags, meta tags, and H1 tags

Your user interface, layout, and all aspects of design

Alt text for your images

The keywords you use, and their usage density (do not assume more is better!)

How fresh, unique, and current your content is

The time it takes for your website to load

URL structure, and whether or not the URLs contain your keywords

XML sitemap – it should be comprehensive and dynamic

A full indexing of your site (you can select pages that you do not wish to be indexed by search engines)

Internal linking (linking to other pages within your site) and navigation

Robots.txt file (this tells the search engines to index your site)

301 redirects.