Domain Name: If your domain name include the keyword you are optimizing for, then it is a multiplicative factor to your SEO efforts.
Example: Songs.pk are better than indiamp3.com, if keyword is ‘songs’.Navigation: Navigation affects SEO efforts very much. JS/Flash navigation should not be used because these technologies are not search engine friendly. CSS 3 transition effects can be used as an alternative to these technologies.
Structure of site: The structure of site should be very efficient and user friendly with a tree like structure and no page at more than 4 depth in this tree.
Subdomains: If your site is meant for more than one service than you can make subdomains respectively.
Sub-domaining not only increase SEO marks but also improves total performance of site as modern browser treat colleges.pratiyogi.com and schools.pratiyogi.com as two different domain and more parallel connections can be made by browser on same domain.
Site-Maps: Each site should have two site-maps. One for your users it can be made up of any-thing viz. images, flash elements, js etc. And another XML sitemaps for Search Engine bots. Many online tools are available to do so.
Validated Code: The code of whole of the site should be valid whether it is js, css, or html. Many excellent tools like W3C can be used for code validation purposes.
Robots.txt: Robots.txt is simply a configuration file which tells the search engine bot what to index from site and what not to index. It comes handy when we want a bot not to index confidential files.
Size of site: Google likes sites with more pages and more information.
Frequency of update: Pages should be updated frequently to get new catches on the side of Search Engines. Best to-do here is blog and RSS feeds.
So, here On-site SEO factors comes to end. Stay tuned for Off-site SEO techniques, get your hands dirty with these techniques fast because a vast sea of off-site SEO techniques is waiting for you next!