Much like finding love, losing weight and doing household chores, there are no shortcuts to doing well on Google, and no shortage of people looking to sell them.
At best, paying someone to do something clever means a short-term boost until Google changes its algorithms to compensate for the latest trick and punishes the sites using it.
The good news is that making a Google-friendly site is actually pretty easy. The basic rules are: write clean code, keep things simple, and design with both humans and computers in mind.
For instance, Google can't (or, to be more accurate, doesn't) read text in images, and Flash content is effectively unreadable. This doesn't mean that your site has to be boring, but instead of using an image, you should consider using web fonts to get the same effect.
At the very least, use an 'alt' attribute on an image to tell Google and other search engines what it contains. This kind of change doesn't usually take long, but greatly increases the amount of data Google has to work with.
From <H1> to <H6>
As a starting point, consider hierarchy. Visually speaking, using an <h1> tag and simply setting some text to use a 24pt font may seem to be the same.
However, Google treats any text in an <h1> tag as a primary heading, of which a page should only have one. It treats <h2> as secondary headings, and <h3> through to <h6> as crossheadings.
Your overall site structure should follow suit, with at least one link to every page, and a robots.txt file that tells Google's crawler not to bother searching archive pages.
It might seem to make more sense to leave them in for the keywords they contain, but in practice it's better to draw attention to your main content pages so that visitors will stay and hopefully link to them.
The guide to your site
You can help Google out by providing a sitemap file (called sitemap.xml) that lists all of your content and how often it's updated. Visit the Webmasters webpage to provide Google with this information.
Duplicate pages are a bad thing, and making pages that specifically detect the Googlebot (Google's web-crawling tool) and serve up something designed for it is an absolute no-no.
If you're using a CMS such as WordPress, it's worth having it create static versions of pages where possible. It's not crucial – Google can handle dynamic pages these days – but it doesn't hurt.
This text version makes it clear what's being used to figure out your site's content.
Where possible, it's also preferable to have permalinks like '/products/fridges/dynatech-coolfreezepro/' for pages, rather than addresses that end with things like '?page=42132'. Every scrap of data you give the crawler will boost your chances in search results.
This is me
As far as raw content goes, the most important thing is that your site uses the keywords that people search for.
Visit the Webmasters webpage again and request a copy of the data that Google's search engine uses, then examine it. If your site doesn't use the phrase 'humane spider catcher', Google won't direct people looking for those words to your site.
That sounds obvious, but content in frames, videos, pictures, pulled from Twitter or generated on the fly can be left out.
After that, the challenge is to get good links to boost your authority.
These are straightforward tips, but SEO is really pretty simple – the people who claim otherwise have something to sell you. Never be tempted to pay for dodgy tricks.
In most cases they don't work, will only send worthless traffic rather than actual readers, and could well come back to bite you later on.
Much as exercise and a good diet are the only way to lose weight, good content is the only true way to achieve a good Google rank.
Use of meta tags
Metadata is little scraps of invisible data in a web page, intended to define and provide information about your site. This is one of the few cases where Google advocates putting something into a page that the reader won't see.
The most important is a description – <meta name="description" content="A description of the page"/> – placed in a page's header. It's where you can decide exactly what text appears in your search engine result, rather than leaving Google to pull a few choice words from the page.
Less useful are 'meta tags'. Originally, these offered a way for site owners to provide their own keywords to search engines, but they were utterly abused.
These days, they're completely ignored. No matter how many self-proclaimed search experts insist you should fill them in, you may as well not bother and save yourself a few bytes. Google works out appropriate keywords based on the actual content of your page and the links that come to it.
Your job is to make sure that said content will lead it to the right decision. If not, rewrite and rework it so that it does. There's no quick and easy way to tell it, "Actually, my site's about this…" if everything about the content suggests otherwise.