The Ultimate Guide to WordPress SEO (2023)

Seo For Wordpress


Everyone wants to rank on Google. Not everyone does, though.

Through our SEO journey, we learned that SEO is not as complicated as it seems. The main challenge is its broadness. It consists of a huge amount of small steps, which must be taken care of one at a time.

It takes a while, especially for beginners, to find all that information and start optimizing effectively.

That’s why we created this all-in-one WordPress SEO guide – to gather everything important in one place.

What is WordPress?

WordPress is the most popular content management system (CMS). It’s the simplest way to create your blog or website. The most recent statistics show that it powers over 39% of all the websites on the Internet.

There are plenty of reasons why people prefer to use WordPress. Here are the main ones.  

User-friendly interface

Whether you’re building a website for a client, or you’re doing it for yourself, this is a huge advantage. The WordPress interface is functional and intuitive.

You can easily add new content, manage user roles, customize the appearance of your website, and much, much more.


Plugins are pieces of software developed by the WordPress community, that contain various functions.

They’re the reason WordPress fits almost everyone’s needs. Easily accessible from the user interface, you’re only a few steps away from adding thousands of brand-new functions to your website.

SEO friendly

Don’t worry – you don’t have to be a tech geek to make your site optimized for search engines.

Having a WordPress site without one of the SEO plugins is like having a car without fuel.

WordPress offers simple but great plugins for SEO, such as Yoast SEO, RankMath, All-in-one SEO, etc. 

Choosing the right hosting

The first big step in your SEO journey is to have a clean foundation for your site.

That’s right, I’m talking about hosting

You need to understand the needs of your site. It’s not the same if you want to build a huge online store or a simple portfolio website. If you’re just starting, I recommend you choose a reliable shared hosting.

When it comes to hosting, there are many factors that can impact your site’s performance. 

Before choosing a host, make sure to check the following: 

  • server up/down time, 
  • speed and responsiveness, 
  • does it include additional features (such as backup, SSL, CDN integration, etc), 
  • storage limit, 
  • price, 
  • is there a plan upgrade option,
  • does it have reliable customer support

Be really careful about this one.

You can spend hours optimizing your site, researching keywords, and creating content, just to realize your initial server response (speed) is bad.

And yeah, you guessed it – speed is one of the major SEO ranking factors

SSL certificate (security)

The SSL (secure sockets layer) certificate is a security method that encrypts sensitive information that comes through your websites, such as credit cards, usernames, and passwords. 

It enables your website to move from HTTP to HTTPS – a more secure version of the website. 

Sites with SSL provide the best and, most importantly, safest user experience. Google also gives a boost to sites that use SSL.

Every site that’s not using SSL will be marked as “not secure” in a person’s browser. Having SSL has slowly but surely become the new standard for web pages. 

Most hosting companies will provide you with a free SSL certificate.

All you need to do is enable it on the server. If you still have some insecure pages, or the HTTP version of the site doesn’t automatically redirect to HTTPS, make sure you download the Really Simple SSL plugin which will take care of that.

Choosing a theme that’s optimized for SEO

WordPress themes allow you to modify your site’s design and layout.

Some themes are heavier in terms of code than others. Needless to say, more code equals less speed.

That’s why you must be careful about choosing the right theme, and judge not only by the looks. 

Here are a few of the most popular themes that look and perform well:

  • GeneratePress, 
  • Neve,
  • OceanWP, 
  • Astra, 
  • Jevelin, 
  • Webify, 
  • Divi, 
  • etc. 

When you’re inspecting live demo versions of a particular theme, you should inspect the code of the site.

You can do that by right-clicking on the page and selecting View page source.

So, it’s good practice to choose a few themes and compare their page source, before making a final decision. 

Choosing the right SEO plugin

An SEO plugin is a must-have for a WordPress site.

It’s easy to install and gives you total control over the most important SEO elements. 

We’ll use Yoast SEO in our example, but we also recommend RankMath.

Yoast, besides giving you the option to set a focused keyword, gives you 4 different options to check for every page:

  • SEO,
  • readability,
  • schema,
  • and social.


Under this tab, you have the ability to customize how your page will look in Google SERPs (search engine results pages). That’s done by editing your site’s meta title and meta description. 

Here’s the example for our Web Design page:

YoastSEO Adonomy Example

What’s really useful are the results you get under the ‘SEO Analysis’ tab.

Yoast, while analyzing your page, meta title, and description (in relation to your focused keyword), divides results into 3 categories:

  • Good results,
  • Improvements,
  • and Problems. 

Everything after that is pretty much self-explanatory. 


Yoast also analyses your written content and gives you a readability score for every single page.

Same as SEO, you are provided with a bunch of suggestions for your text.

Your goal is to have as many good results as possible.


Schema markup describes your content to search engines.

It’s a semantic vocabulary of tags that (in this case) Yoast automatically assigns to each and every one of your pages.

Your blog posts need to be treated as articles, product pages as products, and common pages as web pages.

You can change schema default settings for the page type under SEO Search appearance Schema settings. If you want to change a setting just for a certain page you can do it under the 3rd (schema) tab, as shown on the screenshot.


It’s important to customize the way your pages will look when shared on social media.

In this segment, you can upload thumbnails for Facebook and Twitter, and edit titles for particular social networks:

Both Facebook and Twitter image dimensions should be 1200×630.

SEO-friendly permalinks (URLs)

SEO-friendly URLs are easy to read, contain keywords and describe the article/page accordingly

The first thing you must do is go to Settings Permalinks and choose Post name as the common setting. That way you will avoid the automatic generation of bad URLs, like

Here are a few best practices for defining an URL:

  1. They must be simple, readable, and convenient – both your readers and searchers should be able to understand them
  2. Try to make them as short as possible
  3. Use nothing other than hyphens when separating words
  4. Use lowercase letters

Setting up a preferred domain

Learn more in our article about setting up a preferred domain.

Creating a sitemap

An XML Sitemap is a file that contains information about your website structure and hierarchy – pages, categories, posts, products, etc.

A sitemap makes it easy for search engines to crawl and index your website. Luckily, with YoastSEO, you’re automatically provided with one.

If you’re not using Yoast or any other SEO plugin that provides it automatically, you can create it on this page:

How to activate and access your sitemap with Yoast SEO?

Make sure your Sitemap option is turned on:

  1. In Yoast go to General → Features
  2. Turn the XML Sitemaps tab on

You can now access it by typing sitemap_index.xml after your domain name.

This is what it looks like: 

How to edit your sitemap

You want your sitemap to be simple and clear. You don’t want to waste your crawl budget indexing non-relevant content. 

Your sitemap needs to include only relevant content that should be indexed by Google and featured in SERPs.

You can decide what you want to include in your sitemap by going to Yoast Search appearance.

For example, our site has sitemaps for three different things – posts, pages, and projects. We don’t want Google to crawl and index our category pages, tags, author, and date archives.

You can set your preferences for the following:

  • Content Types: posts, pages, and projects (Divi theme)
  • Taxonomies: categories, post tags, project categories, and project tags (Divi theme)
  • Archives: author archives and date archives

Verifying a site with Google Search Console

What is Google Search Console?

Google search console (GSC) is a free tool provided by Google.

With GSC you gain access to all the relevant information about your site’s performance.

Some of the valuable insights are index coverage, performance (number of impressions and clicks), improvement suggestions, etc.

With GSC you gain insight into:

  • how customers are discovering your page,
  • which keywords are they typing in,
  • how many of them click through after they see your site in search results, 
  • and much more.

How to set up Google Search Console

  1. Log into the Google Search Console
  2. Click Add a property
  3. Under Domain type your website URL

After these three steps, you’ll need to verify your website ownership. You can do this in many different ways.

Verifying the ownership

Option 1 – HTML tag:

  1. Download and install the Insert headers and footers plugin for WordPress
  2. Go to GSC →  Alternate methods →  HTML tag and copy it
  3. Go back to WordPress → Settings Insert Headers and Footers
  4. Paste the tag into the Scripts in the Header section
  5. Click Save
  6. Go back to GSC and click Verify 

Option 2 – Yoast:

  1. Go to GSC →  Alternate methods →  HTML tag and copy the code after content without the brackets
  2. Go to Yoast General Webmaster tools
  3. Paste the code under the Google verification code
  4. Click Save changes
  5. Go back to GSC and click Verify

Submitting a sitemap to Google to GSC

The final step is officially submitting your sitemap to Google.

Follow these steps:

  1. Go to Google Search Console
  2. Select your website
  3. Click on Sitemaps
  4. Enter your sitemap URL

That’s it, you’re done. After Google goes through your sitemap, it should look something like this:

Integrate Google Analytics

Learn more in our article about setting up Google Analytics.

Optimize title tags and meta descriptions

Page titles

Page titles are pieces of text which show how your page looks in Google SERPs and browser tabs.

A good page title with the right keywords in place can help you boost your rankings and increase your click-through rate. When writing blog posts, it’s good to have numbers in your page title. Studies show that page titles with numbers have a higher CTR.

Page titles must:

  1. have between 30 and 70 characters,
  2. be unique for every single page, 
  3. be written for humans,
  4. not have stuffed keywords inside them.

Meta descriptions

Meta descriptions represent a short summary of the page. They can be optimized by a webmaster, or fetched automatically by a search engine. Meta descriptions must be carefully written, in order for the end-user to click on the link. 

Meta descriptions must:

  1. have between 120 and 155 characters,
  2. include USP-s (unique selling points),
  3. include CTA-s (calls to action),
  4. include the keyword(s) you want to rank for.

Good page titles and meta descriptions help you rank higher and increase your click-through rate.

We highly suggest you take your time and write unique titles and descriptions for your page.

Responsive design (optimizing the site for all devices)

Your website must be optimized for all devices – desktops, laptops, tablets, TVs, and smartphones.

Luckily, almost all WordPress themes are responsive. Even if you don’t spend any time optimizing your site, it will be responsive.

But, if you don’t tweak around, your site will provide the best experience only on the resolution of the device you made it on.

Sometimes your menu won’t look like you want it to on smaller devices, the font size will be too small on one device and too big on another one, and sometimes things will overlap. You get what I’m saying.

Take your time and carefully check your responsiveness.

Optimizing images

You need images to spice up your content.

They bring huge value to your pages and posts while keeping readers engaged. 

Image size

There must be a compromise between quality and quantity.

Images must be small in size, in order to load fast, but also need to have appropriate quality, in order to look good.

We recommend using plugins such as Smush and Imagify. They will take care of your images automatically.

Otherwise, you can always compress images on your own using,, or

Image names and alt tags

Naming your images correctly helps you rank higher in image searches.

Even if you’re not interested in ranking in image search, alt tags can contribute to your keyword density and topic relevance. Still, that doesn’t mean you should stuff keywords inside image names and alt tags.

You should name your images according to what they represent.

Let’s say you want to rank for the best beaches in Croatia and you include a picture of sunset and birds in the town of Dubrovnik inside your post. 

You should name your picture accordingly: birds-and-sunset-in-dubrovnik.jpg, not birds-on-best-beaches-in-croatia-sunset.jpg.

That way you get topical and semantic relevance while not trying to over-optimize with keywords.  

Installing a cache plugin for site speed

Cache plugins are super important.

Caching is the process of storing copies of files in a cache, or temporary storage location so that they can be accessed more quickly.


Whenever you load a webpage, the browser needs to download data in order to display the page. This is where the cache kicks in. After the page loads, browsers cache the page’s content on the device’s hard drive.

Therefore, load speed increases and the end-user is able to instantly load previously displayed pages. 

Caching plugins provide multiple other features:

  1. file optimization (minifying HTML, CSS, javascript),
  2. media optimization (lazy loading, image compression),
  3. database cleanups.

For caching, we recommend WP Rocket (premium version) and WP Fastest Cache (free version).

Internal and external linking

Internal linking

Internal links are links from one to another page on the same domain. 

Your site’s navigation is a prime example of internal linking. You can put internal links in your blog posts and page content. 

Internal linking gives structure to your website, so the end-users can easily navigate through your content. Everyone loves to have the option to check some other related topics within the article.

In terms of SEO, Google divides the link value between all the links on a page. In most cases, the homepage of the website has the greatest link value, due to most backlinks. 

So, if you have five internal links on the homepage, the homepage link value splits into five parts for each particular page. That’s why an article that’s featured on the homepage gets more ‘value’ than one that’s not.

We recommend:

  1. carefully determining the site structure,
  2. adding contextual links within blog posts,
  3. link hierarchical pages,
  4. and adding related and/or popular post sections.

External linking

External links are the ones that point from one domain to another.

If you link to another site from within your article, you’re basically telling Google that, according to you, this site is trustworthy. The more good links the site has, the more authoritative it gets, and finally – it ranks better.

At the same time, you’re helping someone rank and telling Google that your topics correlate, which helps Google define your site better.

For Google, external links are votes of relevance and confidence and that’s why they’re valuable.

When you’re linking out to other pages, consider that the sites you are linking to are relevant to the topic and authoritative. Don’t link to unsafe, spammy pages and ones that have nothing to do with your topic.

If you want to know more about how backlinks and domain authority work, learn more about PageRank.

Noindex URLs

If you noindex a page, it’s not gonna be featured in search results.

That doesn’t mean you can’t access those pages.

You’re just saying to Google that you don’t want that page featured in SERPs.

So, why do that?

You should noindex pages that have basically no SEO value, and the ones that can cause major SEO issues.

As always – it depends.

For example, if you’re running a blog that has a huge amount of tags, every single tag is going to have its own archive page. If it’s indexed it can cause duplicate content issues with articles that are already describing that topic. Also, at the same time, you’re wasting your crawl budget. On the other hand, if you’re running an e-commerce business, you certainly do want to have your product categories in SERPs.

Don’t worry, it’s really easy to do it in WordPress, both with YoastSEO and RankMath.

We already described the process in How to Edit Your Sitemap section.

At Adonomy, most of the time we noindex our partners’ archive pages – authors, categories, and tags.

Other pages that should not be indexed are:

  • Thank you pages
  • Login pages
  • Certain landing pages
  • etc.

Schema markup (structured data)

Structured data is a detailed way of describing your content to search engines.

The vocabulary for structured data is called Schema. Your pages and content can be described using relevant tags and properties.

If you’re running an e-commerce store, search engines should know that product pages are not in the same page category as blog posts. That way, by using structured data, your products can be presented in SERPs in the form of rich snippets.

If you’re running a blog and you’re using structured data wisely, your content can show up as a featured snippet.

Snippets are very important since they are showing up at position zero – above classic organic results.

Featured snippets are shown in the form of:

  • paragraph
  • list
  • table

Structure content with appropriate headings

Headings tags are of great importance to search engines and your users. They provide structure and hierarchy for your content.

There are six heading tags, but in most cases, you’re only going to use the first three.

This article’s H1 tag is WordPress SEO [The Ultimate Guide 2021] – it describes the main topic of the post. H2’s are subparts of H1, for example – Noindex URLs or Schema markup, and so on.

By using headings you can also build a table of contents, so the users can quickly navigate through your posts.


That’s it. We’ve covered all WordPress SEO basics!

Now you know what to focus on when creating or optimizing a site for you or your clients.

Don’t get me wrong – there’s still a lot to learn. But with this guide, you’ve taken one huge step towards success.

Good luck!

Related articles

Performance Report In Gsc Adonomy

A Full Guide to Performance Report in Google Search Console

Master the art of analyzing your website's performance with Google Search Console's Performance Report. Get actionable insights and optimize your SEO strategy.

Www Note Hanging

How to Set a Preferred Domain (The Easy Way)

The process is plain and simple. However, it can feel quite intimidating, given it can be done in many ways.

How To Set Homepage In Wordpress Cover

How to set your Homepage in WordPress

When you create your WordPress site, your homepage will by default show your latest posts.

Join our ever-growing list of success stories