Search engine analytics are ever changing. For instance you might notice now when you do Google searches one of the search results is a list of videos that match your keywords. That’s fairly new and is one small way now you can show up higher (by creating videos with lots of relevant, helpful information and filling out their descriptions and tagwords)
Here are several major ways at the moment to get your site showing higher up.
1) The age and relevance of your domain name to the search is a high factor. The longer you’ve owned the domain name and the more relevant it is to the keyword search the higher it will rank. For this reason some companies own several domains: one main one with a company name and others with often-search terms for their industry.
Like a company called Eyesight Plus might own www.eyesightplus.com and www.seebettertoday.com and www.besteyesurgery.com. They would then point the other domains to the main domain of www.eyesightplus.com.
2) The amount of times keywords in relevant content (not just a stash of keywords posted on your site somewhere but blogs, articles, videos, podcasts, white papers and e-books) is the next highest factor. A good book for details on how to do this is Content Rules by CC Capman & Ann Handley.