SEO stands for Search Engine Optimization and whether you are running a business online, starting a blog or freelancing, SEO is a must-master topic in order to get visibility so let’s dive in.

What is SEO?

As stated above, SEO stands for search engine optimization. In plain english, it means optimizing your web pages for search engines to find them easily and index them on the first page - and eventually in the top five first results.

Suppose you are starting an e-commerce for selling clothes. There is an infinite number of such e-commerces, if you do not want to lose a customer to another seller, you better stand out be in the first results the customer sees.

So how do you achieve that? To reply to this question, we first need to learn how do search engines work on the first place.

What is a search engine and how does it work ?

According to wikipedia:

A web search engine or Internet search engine is a software system that is designed to carry out web search (Internet search), which means to search the World Wide Web in a systematic way for particular information specified in a textual web search query.

So that’s pretty much it, imagine the world wide web as a massive book. A search engine is the index you use when you are looking for a particular content. It gives you all the pages that contain the words -also called queries or keywords- you are interested in.

As you may know, there are several popular search engines namely: Google, DuckDuckGo, Ecosia and many others. Each of these search engines uses a different software program to search the web for your query, but they all do it in the same fashion:

  • Crawling: Whenever you deploy a website or make changes to an existing one, search engines send bots called crawlers or spiders to examine your web page to fetch and store data about your website like: headings, site tagline, keywords, links, content, etc, in order to index it. These spiders never stop, they go from page to page by following links and discover new content.
  • Indexing: All the important data collected from the crawling step is saved in the search engine database and this data as a whole is known as the index of the web.

So whenever a user goes and enters a query, the search engines sends it to its software which search then the index of the web for related pages to search term.

Now, that seems fairly easy, but you have to note that not all websites make it to indexing, crawlers only keep what they judge relevant. Moreover, the search engine first asks questions from all the pages in the index before displaying the most relevant results to the user query. There are hundreds of these questions like:

  • How many times is the search query used in the entire website?
  • Is it included in the heading ? In the content?
  • How many other websites cite this page?
  • Is this page is high quality website or is it a low quality website?

The search engine then gives a score to each page according to how well it answers the questions above and list the best pages to the user and voilà!

Now your purpose as a developper, it make sure that your website is answering well to all of the questions above and we are going to see how in the rest of the article.

To-do list for an SEO friendly website

Properly linking the content and pages

The crawler sent by the search engine will have to be able to navigate properly in your website without ever getting stuck.

If it visits a blog post, it needs to find its way to the home page. If it is in the home page, it needs to find a way to navigate to any other page of the website etc.

Keywords

All the SEO process relies on one important element: keywords. Keywords are words or phrases that a searcher enters into a search engine when looking for a specific content. You have to be aware of how to use them and where to use them.

Where to use keywords?

Suppose you are writing about shoes. Your keyword is thus: shoes, you have to include it in:

  • The title of your article - if it's a blog post, an e-commerce product, you name it
  • The heading: the main title should always be of type h1. Some developers set it to h2 or h3 because they think the font is too big. In this case, just change the styling to the font size that suits you.
  • In the text content: the blog post, the description of the product....
  • The url:
     <a href="http://www.yousite.org/shoe" title="shoe"></a>
  • The alt attribute of your image.
  • In your metatags (See below )

Now, shoe is what’s known as a generic keyword. You need something more pertinent than that to make to the first top results:

  • Add some description like: Red high heels sandals.
  • Your brand: AwesomeBrand Red high heels sandals

How to use keywords?

Use them naturally and smartly. Writing a something like:

Shoe shop. Buy a shoe today from our shoe shop. We have shoes for everyone and shoes for every price. The delivery of the AwesomeBrand shoes is done for free.

This will be considered by the crawler as spammy so never do that.

Metatags

Using metatags should be automatic whenever building a website, they are what appears to the user when the search engine returns the result like you can see in the image below.

seo-metatag-search-engine-result

A good SEO can never be achieved without these two basic tags. Note that a site description should not exceed the 160 words.

<title> SEO WEBSITE </title>
 <meta itemprop="description" name="description" content="A description that does not  exceed 160 words" />

Website optimization

url structure

You have to make sure that the url structure is well crafted: The example below is an example of a bad url structure:

www.awesomewebsite.net/shoes/1

You should instead write something like:

www.awesomewebsite.net/shoes/awesome-red-sandal

You can always add categories:

www.awesomewebsite.net/shoes/read-shoes/awesome-red-sandal

But be aware that the closer the keyword is to your domain, the greater the impact it creates.

speed

There are many many things to say about this from minifying you images and files to performance optimization. So I will just give you links to check the performance and speed of your website and try to optimise it accordingly to the results:

As seen above, in order to be indexed and have a good SEO, your web page has a score depending on how many times it has been cited in other web pages so:

  • Create good content to make other bloggers and people want to talk about you in their own web pages!
  • When starting out, this is kinda difficult but there are ways like asking bloggers or people that have content related to yours to talk about you (most of the time you will have to pay for this).
  • You can also reply to questions online like Twitter or quora to send them towards your web page.
  • Include share buttons on your website, the more your page is shared the more impact it creates.
  • Do not link to spammy content. Whenever you are not sure about the website you can add a nofollow attribute to your link as below:
    <a href=http://www.website.com/ rel=nofollow>Link Text</a>
  • Once again: Never spam, search engines do really hate that.