How to improve SEO for a new website

Getting the top of Google for a reasonably popular search term takes years but if you spend the time now, it’ll pay dividends in the long run

Phil from 4 day week
11 min readOct 19, 2021

SEO is (unfortunately) a “winner takes all” game. Getting the top of Google for a reasonably popular search term takes years — it’s an enormous accomplishment. Most sites fail to get anywhere near the first page due to poor website search engine optimisation (SEO).

As can be seen below the top 10 positions get the vast majority of clicks, so if you are on page 2 — forget about it. You need to aim for the moon!

The article will show you how this website has went from 0 organic users to around 300–400 per week and growing. I’m not going to lie there is no silver bullet, but if you follow these strategies you’ll be able to get some search terms on page #1 of Google and start receiving “free” traffic!

How does Google rank websites?

Firstly, what criteria does Google’s algorithm use to rank sites? As you can imagine there are many different search engine ranking factors which you must optimise for, however, these are the most important things to consider:

  1. Write content which matches Google search queries
  2. Reduce Website load time
  3. Optimise Google core web vitals
  4. Improve Mobile friendliness
  5. Enable HTTPS
  6. Improve website structure
  7. Backlinks to your website / good domain reputation

So let’s break it down one by one…

1. Write relevant content which matches Google searches

Possibly the best way to get organic traffic when you are starting out is to write content which matches what people are searching for on Google. I cannot emphasise the italicised part enough. You shouldn’t just write blindly on your blog — this is a common mistake. You need to be much more tactical than this.

For example, ask yourself this:

  • Question: Why do I click on a particular link on Google?
  • Answer: Because it matches what I am looking for (duh)

In other words, you need to reverse engineer the problem. First an under served topic on Google (i.e. a gap in the market) and then write an article about it.

Before you write any article, you need to make sure the article you are thinking of writing passes these 2 tests:

  1. Are people searching for it?
  2. Could my website realistically rank on the top page of Google for this search term? Remember, we are always aiming for page #1.

But how do you know what people are searching for though and whether you can realistically rank on page #1? You need to use a keyword research tool for this:

Here is an example of what the Ahref’s keyword explorer looks like:

How to find underserved search topics

The first step is to filter for any search terms which you think could be of interest to your target market. For this website my list may be:

job, interview, cover letter, software engineer, data scientist, salary etc

Then add an additional filter so that the search results also include at least one of the following:

what, how, who, where, why, when, guide, tutorial, resource, help ideas, tips, learn, examples tool,calculator,data,compare,tester,test,app, free, guide, tutorial, about

By also including these terms you are ensuring that the search term is something you can serve with useful content.

The next step is to filter out topics which are too difficult to realistically get on page #1. To do this set an upper limit of 20 for the “keyword difficulty” score. We now have a list of topics which you could potentially write an article on.

All of these topics are pretty niche (only had a few hundred searches per month) but they are underserved. When starting out, your only option is to target these “long tail” terms as it’ll give you the best chance to get some organic search traffic. Once your domain gets some authority, however, you can try to compete for some more difficult (i.e. higher search volume) terms.

For more information on these concepts this I’d really recommend watching this video.

2. Reduce Website load time

Loading speed is one of the biggest factors affecting the results of your website. The faster your website loads, the higher you will rank on Google as the algorithm rewards sites which have good usability. For many privileged people (such as myself) who have access to a fast internet connection, this may be surprising but consider this:

Most of the world still has a slow internet connection, even in 2021. For example, the average internet speed in Brazil is 4.8 Mbps! Therefore, as you can imagine having a slow website which takes 15 seconds to load has a direct impact on conversion. In fact, Amazon found that every 100ms of latency amounted to a 1% loss in sales. Similarly Google found that an extra 0.5 second load time reduced click through traffic by 20%.

There are a number of ways to improve the speed of your website:

  • Enable server compression (e.g. GZIP)
  • Lazy load images
  • Minify Javascript & CSS
  • Optimise database queries
  • Defer non-critical Javascript & fonts
  • Asynchronous load CSS & JS
  • Reduce the number of requests to the server

To test you’re website’s speed and to get improvement suggestions 👇

Google Page Speed Insights

Ideally your website should load in less than a second.

3. Optimise Google core web vitals

You also should make sure your “core web vitals” are passing on the Google Search Console. These are slightly different loading criteria which Google uses to judge the user experience of a website. Specifically you must aim to reduce the following metrics:

  • LCP (largest contentful paint): “The amount of time to render the largest content element visible in the viewport, from when the user requests the URL.”
  • FID (first input delay): “The time from when a user first interacts with your page (when they clicked a link, tapped on a button, and so on) to the time when the browser responds to that interaction.”
  • CLS (Cumulative Layout Shift): “CLS measures the sum total of all individual layout shift scores for every unexpected layout shift that occurs during the entire lifespan of the page. “

These “technical SEO” tasks can be tricky to resolve as they requires deep JS and HTML knowledge to optimise but if you put the time in, the gains in your search engine ranking page (SERP) rank will be worth it. Optimising core web vitals is becoming a more important factor as Google is putting more emphasis on these new metrics when ranking search results.

4. Improve Mobile friendliness

Improvement in mobile friendliness has become one of the top priorities for SEO. With more people using their phones to access the internet, mobile site design is becoming increasingly important. As a result Google rewards websites which have good usability on all different devices (e.g. mobile, tablet etc).

Making your website mobile friendly is part art, part science. From a coding perspective it involves edit your CSS / SAAS / SCSS to incorporate media queries which update the look of your web app on different screen sizes e.g.:

p {
font-size: 1.4rem;

// Increases paragraph font size on small screens
@media(max-width: 800px){
font-size: 1.8rem;

Building a mobile friendly website involves a lot of common sense but you must at least have:

  • A mobile menu
  • Ensure font sizes aren’t too small (as different devices have different DPIs!). Make sure you use “rem” font sizing and never pixels (see above)
  • Ensure buttons aren’t too close together (we are relying on clumsy fingers now and not mouse pointers…)
  • Avoid popups as they are difficult to use on mobile (Google also penalises websites with popups)

To make sure everything is working correctly, you can use the Google Mobile Friendly testing tool:

5. Enable HTTPS

Google gives a higher score to websites which have a secure connection by default (i.e. Setting this up requires tweaking of your Apache / Caddy server configuration on the server. You need to buy an SSL certificate, but you can now get this for free using Let’s Encrypt.

This is really easy if you are using Caddy as HTTPS comes as standard when you install it! If you are using Apache, follow this guide.

If you have no idea what I’m talking about, you may struggle with this step — it can be quite technical. In this case my advice would probably be to search on Google for “your hosting provider / CMS https” and follow a tutorial. For example this tutorial helps you setup HTTPS on Wordpress.

6. Improve your website’s structure

You need to ensure that your website structure follows best practises so that Google’s bots can understand the semantic structure of your content. There are number of things you should optimise for:

Relevant meta tags

You need to setup <title>My page</title> and <meta name='description' content='Page description here'/> tags at a minimum in your <head>. Make sure these are semantically relevant for the page's content. Every page on your website should have a relevant and custom title and description. If you are using a CMS like Wordpress these tags will likely be set automatically, based on the title of the Wordpress article.

Relevant H1 tags

As with <title> and <meta> tags, you also want to make sure that the <h1> tag is semantically relevant for its content. Take your time over this - it's very important. You want to use titles which match Google search queries (more on this in the next section).

For example, the basic HTML structure of this page is:

Write enticing copy

Note I didn’t say click-bait, I said enticing 😇. When your website is on Google, you obviously want the user to click it but you are competing with 9 other websites. This will not only will this (obviously) result in more traffic but Google may also “reward” your article for having a high click through rate (CTR) i.e. consider a high CTR as a “soft signal” that the users like your content. You need to be careful though, if the actual content of the article is poor, the user will quickly leave your website which will have a detrimental effect on your SEO. So you need an enticing title and interesting & relevant content to match — no one said this was going to be easy, right? Writing blog titles with a high CTR is a fine art but here are some proven techniques you can try: (a) start the title with a number e.g. 5 ways to improve your websites SEO (b) include the current year e.g. 5 ways to improve your websites SEO in 2021.

URL structure should match the page content

If the page is about “how to improve SEO”, the URL should also include this title (e.g. The whole goal of optimising your website’s structure is to convince Google that the article is relevant for the user’s search query i.e. you need to remember that Google’s goal is to maximise their own user experience — your website is only a vehicle to achieve this.

Optimise for “session duration”

When Google sends traffic to your website they want the user to stay for a “long time” (e.g. >1 minute). Alternatively, if Google sends a user to your website and they immediately exit your website (aka “bounce rate”), this is a “soft signal” which says “this page wasn’t relevant to the user’s query”. So from your perspective you want to encourage the users to hang around on your website for as long as possible.

Here are some tips on how to increase a user’s session duration:

  • Ensure your navigation bar is visible at all times (even when you scroll)
  • Recommend other interesting content in your blog
  • When writing a blog link to other relevant pages on your site
  • Add CTA’s at the top, middle and bottom of relevant pages
  • Video content and engaging images are great for increasing session duration
  • Make sure the start of every article you write entices the user — focus a lot of energy on the first few paragraphs
  • and finally, produce interesting content!

By implementing these strategies the average session duration on this website has been slowly increasing:

7.Domain reputation

Finally you need to try and try to increase the number of sites linking to your site (aka “backlinks”). Preferably you want high quality websites which have a high “domain authority” score on Ahrefs. Ultimately, you can’t choose who links to you however, so the more the merrier.

Be careful though, you definitely don’t want to buy backlinks. Although it can be tempting, it will only have a negative effect on your SEO.

Backlinks can grow organically if you have an interesting product but in general, this step is very difficult. You have a few options open to you though:

  • Post your website everywhere: for example on HackerNews, IndieHackers, ProductHunt/etc.
  • Write guest blogs: Find related websites and get in touch with them asking if they would be interested in a guest blog i.e. where you write an article for them (usually for free) and they include a link to your website in the post. It’s a win-win situation as the content will also benefit their SEO
  • Try Help a Reporter Out (HARO): this app send you an email everyday with posts by journalists looking to get a quote from an expert on a topic for something they are writing. Your could be relevant which would all you to get some press coverage!
  • Write “skyscraper content”: this is content which takes a deep dive on a single topic and as a result often gets genuine backlinks by people who appreciate your work. These articles typically have between 2,000 and 4,000 words.
  • And remember, never pay for backlinks!

The last step is to be patient, SEO unfortunately takes a long time (usually 6 months+ to get results). In fact, 60% of the top 10 of Google are for sites which are >3 years old.

If done well though, SEO can be an incredible source of “free” traffic — follow these steps and your website will be on the first page of Google for many keywords within half a year or so — it’ll be worth it!

This article was original posted on 4 day week — Software engineering jobs with a better work life balance 🎉