WordPress is a CMS that has become an industry standard over time. Once known only for blog sites, you can now create all sorts of websites from e-commerce sites to forums to essentially whatever you want. In fact, popular websites like TechCrunch and BBC America use WordPress.
You can create a new piece of content either as a post or a page. Posts are typically used for your blog and pages, on the other hand, are more commonly used for static pages that don’t really change often, like your About us page, customer services page, etc.
If your objective is to increase visitors, increase customers, leads and online sales and more importantly provide a superior onsite experience, then this WordPress SEO guide is for you.
The most common WordPress SEO Misconception is my site is SEO friendly because I have installed Yoast SEO (or any other WordPress SEO Plugin).
WordPress SEO Checklist
- Theme Selection
- Set Preferred domain (www versus non-www)
- Permalink Settings
- On-page SEO Optimisation
- Page/Post Title Tips
- URL Tips
- Content Structure Tips
- Title & Meta Description Tips
- WordPress Technical SEO
- Configure WordPress to Improve Speed & Performance
- Internal Links Optimisation
- Handling Duplicate Content Issues in WordPress
- Generate XML Sitemap
- WordPress Schema Markup
- Offsite WordPress SEO
- WordPress SEO FAQs
Before we get into actually doing WordPress SEO, let’s take a look at factors to be considered when selecting a WordPress theme. There are a ton of free and premium WordPress templates available. A lot of WordPress themes will offer SEO features. Avoid using these features, Themes are for look and feel. Lean, lightweight themes are best. Plugins are what should be used for extra functionality. Four things you might want to consider checking before selecting your theme are;
- Check if the theme is mobile responsive.
- Check if the theme is mobile-friendly.
- Avoid themes bloated with plugins or third-party scripts that you really don’t need. Read through the theme descriptions to see what’s included.
- Avoid slow performance themes. Check the page speed of the theme demo URL using tools like Google’s PageSpeed Insights, Pingdom or GTmetrix.
Make sure you purchase themes from official sites only to avoid hacked themes. Always update your theme and plugins. Set your comments to manual approval. Always remember to block staging environments with .htpasswd.
Set Preferred domain (www versus non-www)
Moving on to WordPress settings, you need to first decide whether you want to use just domain.com or www.domain.com. Google views both of them as separate pages and hence it’s important to decide which one you want to go with. Once set, WordPress will automatically redirect the other version to the chosen one. Set up DNS and redirect (301) to the preferred version if it automatic redirect doesn’t work for deeper pages.
You can set the URL by clicking on settings and then edit both your WordPress address URL and site address URL. If you are setting up a new WordPress site, you don’t have to worry about which URL format you set. For your existing site, however, check if your site pages can be accessed from different URLs (with and without www). If it does, ensure you set up an automated redirect rule to redirect from one URL format to the preferred format. Check the backlinks, especially the number of referring domains for the root domain to decide which one you want to use as the preferred URL format.
Permalinks are basically the URLs for your posts and pages, make sure your permalinks are set up optimally. Click on permalinks under settings in the sidebar. My recommendation is to use “Post name” as the permalink indicates to the user what the page is about and it also keeps the URL short.
If you are setting up a new WordPress site, just set the permalink as “Post name” and forget about it. You would never have to look back at the setting again. If you have an existing site already and want to use a different permalink structure, changing it will cause broken links. You’ll need to redirect the URLs using the previously set permalink URL structure to the new format. You can implement redirects within the WordPress admin dashboard using the Redirection plugin.
On-page SEO Optimisation
WordPress is my favourite CMS to use simply because it makes on-page SEO implementation easy compared to most other CMSs. In terms of basic on-page SEO, there are five main parts here, the title tag, page/post title, URL, content structure and meta description. Naturally include your primary keyword/topic and variations of it in your page title, meta description, content and images.
Page/Post Title Tips
- Your title should accurately describe the page content. Try to include your primary keyword phrase in your title.
- The title that you enter here will act as your H1 tag from an on-page SEO standpoint. Ensure your theme hasn’t changed the style element from H1 to something else.
- By default, WordPress will change our URL slug to the full name of the post, but you can edit it (as shown above) and change it to your primary keyword target, where dashes would replace the spaces.
- Avoid HTTPS errors. Make sure you have no mixed content.
- “Pages” unlike posts can easily be hierarchised, which will help Google to understand the site’s structure.
Content Structure Tips
Structure each post for your site visitors by breaking up your content into relevant sections. Make sure you have relevant headings for easier scanning through your content. Since this is a WordPress SEO guide, I would only be focusing on WordPress editor features and not on-page ranking factors.
- Try to use short paragraphs. People don’t like to see big blocks of text, especially on mobile devices.
- Use the right kind of headings. The easier your page is to read, the longer they stay on the page. Use the editor’s text formatting styles such as H2s, H3s and other subheadings to format your post content in hierarchal order. Using headings on your content improves readability for your users and creates a structure that can help Google better understand your content.
- Click on the spring button on the editor to add hyperlinks to link internally and externally to relevant content within your posts/pages. When you are linking to external content, make sure it opens the links in a new window. This is good for keeping visitors on your site while still being able to direct them to helpful resources.
- Use the “Add Media” button to insert relevant images into your post. I recommend you do the following;
- Add Alt text to your image tags as it tells search engines what the image is about and helps with ranking your images in Google Images. If your image breaks, the alternative text will show to replace the broken image.
- Secondly, it’s also helpful for people who are using screen readers like the visually impaired.
- User description image filenames.
Title & Meta Description Tips
I use the Thesis WordPress theme for all my sites. The theme comes built-in with useful fields that you see at the bottom of the post or page. If you don’t have these as a part of your theme, I recommend installing an SEO plugin like Yoast SEO / All in One SEO Pack or others to create optimised titles and descriptions for post/page content.
- Title Tags are important for rankings and to increase the CTR. This is the part that would show up in SERPs as well as in the browser tab.
- Rather than leaving it as the default post title, I recommend using a custom title. If this is not set, Google will display your H1 as the Title.
- Don’t make your title too long. Keep it to 70 characters or less.
- The meta description is meant to support your title and further entice someone to click through to your site from the SERPs. If this is not set, Google will pull the first few lines of your content as the meta description. Keep it to 160 characters or less.
- You can also block a specific page using “Meta Robots” tags.
WordPress Technical SEO
In the WordPress technical SEO section, let’s look at some of the key technical SEO aspects that can be configured within WordPress such as page speed improvements, dealing with duplicate content and optimising internal linking.
By combining WordPress with some popular plugins and techniques, you should be able to speed up your website and prevent a lot of easily avoidable duplicate content issues.
Configure WordPress to Improve Speed & Performance
One of the most important areas of technical SEO is page speed optimisation which is great for Google and for the user experience. Google has in fact officially stated that page speed is a ranking factor. In fact, Core Web Vitals will be used as a ranking signal by Google from May 2021. Most sites struggle to optimise is page speed and site performance because it requires dev resources.
You can optimise server response time by tuning Apache or leveraging NGINX on the server. And you can cache your site pages and media either with Amazon Cloudfront and a caching plugin or your host caching service. See below plugins I recommend to boost site speed of your WordPress site;
- WordPress Caching Plugins. Use one of the WordPress caching plugins. Never use 2 caching plugins on the one WordPress installation as they could create conflicts. The following WordPress caching plugins are popular;
- W3 Total Cache Plugin: With WordPress caching, you’re essentially creating static versions of your posts and pages, so they can be rendered quickly by browsers for a better user experience. After you’ve installed the plugin, you’ll see a new menu in the left sidebar called Performance. I enable Page Cache, Minify, Browser Cache, and CDN on all my sites. Now, it’s important to note that the W3 Total Cache settings that work for my site, won’t necessarily work for yours. There are way too many variables to consider like your server set-up, your hosting plan and more.
- The other plugins I recommend you to test are WP Fastest Cache, WP Super Cache and WP Rocket.
- Image Compression plugins: Compress all images using either;
- ShortPixel Image Optimizer: ShortPixel automatically compresses and optimizes images when you upload them to your server without compromising on image quality. (Personal favourite)
- Optimole: Optimole is an all-in-one plugin for image optimization & lazy load.
- You can also try out WP Smush, EWWW Image Optimizer, Optimus HQ to compress all images.
- Speed Booster Pack PageSpeed Optimization Suite: This plugin is helpful to enable the lazy loading of images, so the images get loaded as needed. For example, when you load a page with images, the images further down on the page will only load as you scroll to its location.
- Accelerated Mobile Pages (AMP) – Use an AMP WordPress plugin to implement the AMP framework for creating fast-loading mobile web pages. AMP tends to load twice as fast compared to a non-AMP site resulting in higher engagement and viewability rates of your site.
You can also use external tools like Pingdom’s full-page test, PageSpeed Insights, GTMetrix, etc which will show you the page load times and provide performance optimisation tips. Monitor key metrics such as time to first byte (TTFB) and total page size of your most important pages by traffic and revenue. Aim for a load time of 3 seconds or under.
Don’t use WordPress plugins for everything. Poorly written plugins can cause performance, maintenance and security issues. If you want to monitor broken links, don’t install a link-checking plugin as these can consume a lot of resources. Use a crawler like Screaming Frog, Botify, and Deep Crawl to find and fix broken links on a regular basis. Also, check the new and improved crawl stats for your site within the search console to find issues.
Internal Links Optimisation
The key focus here is to keep your site visitors on your site and viewing multiple pages using internal linking. You could use a site crawler like Screaming Frog, Botify, Site bulb, Deepcrawl, etc to run a site crawl and determine the internal links pointing to all your site pages. Add internal links to pass link equity to the most important pages that you want to rank. You could do this automatically with the help of the plugins such as WordPress Popular Posts and Custom Sidebars. But I would suggest manually adding links to your pages to help strengthen your content and improve the user experience. Read how you can optimise internal links below;
- Use keywords preferably exact-match anchor text to link to other pages.
- Link blog posts to relevant products and landing pages. Also link related blog posts together.
- Use breadcrumbs and show the full site’s structure. Yoast has its own breadcrumb functionality. This is an advanced feature that requires you to copy and paste code into your theme template.
- Use WP PageNavi to replace traditional WordPress pagination with fancy pagination links.
- Increase the number of products per category to improve the site’s depth.
- Implement cross-selling to improve internal links and sales.
Handling Duplicate Content Issues in WordPress
Yoast SEO plugin makes it easy to handle some of the indexation issues that cause duplication of pages common when using the WordPress CMS as it is out of the box. With Yoast you can;
- Under Yoast Post Types settings, make sure that your Meta Robots settings for both pages and posts are unchecked, which will ensure that all of your blog posts and pages are set to get indexed by default. Set the media settings as “noindex, follow” because WordPress will often create separate media pages that have nothing more than just the image creating thin content pages.
- Under the Yoast Taxonomies tab, set noindex to the tags and format option. There’s no real value in indexing tag and format pages on Google.
- Author and archive pages do not have much SEO weight.
- Under the Archives tab, set noindex for the author archives If there is only one author.
- Under the Archives tab, I also recommend noindex of date-based archives unless you have a site where date-based content is imperative.
- With Yoast SEO, you can canonicalise duplicated pages and block specific pages using meta robots noindex.
If you want to dig deeper into duplicate content issues, use technical SEO tools like Screaming Frog, Botify, Deepcrawl, Sitebulb etc. Each of these tools has a content quality section to spot and fix duplication issues of your site.
Generate XML Sitemap
When it comes to SEO plugins for WordPress, Yoast SEO seems to be the industry standard WordPress SEO plugin. You can generate an XML sitemap, which you can then submit to search engines like Google / Bing via the Google search console or Bing webmaster tools. My recommendation here is to disable the author sitemap, and excluded media pages, tags and format pages. As of WordPress 5.5, lazy loading, XML sitemaps integration, automatic updates for plugins and themes and more are part of the core. Here’s all you need to know about the new XML Sitemaps functionality in WordPress 5.5.
Utilising WordPress Schema Markup
Google SERPs have evolved beyond traditional text links. Today’s SERPs include carousels, rich snippets, knowledge boxes, ratings & reviews on product listings, featured snippets/answer boxes and more. SERPs for a site can benefit from enhanced results.
The schema markup assists search engines to understand the nature of the content on the page. Google has in fact stated that properly structured data can enhance your site’s appearance in their search results.
To leverage these rich results for your sites and stand out and occupy more real estate on the SERP, you need to add schema markup to your WordPress site.
On WordPress, you can insert schema markup code using the following ways;
- By manually editing the required WordPress or theme siles.
- Using a schema plugin that allows you to enter code into the header tags.
- Using an SEO plugin. Yoast is a good SEO plugin example that also implements schema markup in your pages.
- Some themes come with defaults built-in. Examples of themes that implement schema include Thesis (Focus), Genesis, Schema lite, Schema, etc.
- Using Google Tag Manager.
Once you implement the schema markup, also make sure you test it using Google’s structured data testing tool.
The schema plugin makes it convenient to implement schema on your WordPress sites with no coding required. Many of the plugins however only achieve results for a couple of categories. Schema.org has a good reference for hundreds of categories. Some popular categories include schema for product listings, recipe schema, reviews for restaurants, movies, stores, etc, event schema, local schema, breadcrumb schema, OpenGraph, video schema, news article schema and more.
Below are some of the WordPress rich snippets plugins worth trying to check if it works for your needs;
- All In One Schema Rich Snippets plugin
- WP Rich Snippets
- Yoast Premium plugin
- Rich Reviews
- Schema App Structured Data
- Schema Plugin
- Schema Pro
Offsite WordPress SEO
Offsite SEO strategy for WordPress sites is no different from offsite SEO for regular sites. Aim for links, citations or mentions from high authority sites. On the flip side, backlinks from low authority or low trust sites can be harmful. Create unique content that people would like and share. Read my link-building guide to understand how to get high-quality backlinks.
WordPress SEO FAQs
Is WordPress good for SEO?
Yes, WordPress is good in the sense, that it makes the implementation of your SEO strategy easy from an on-page & technical standpoint. With regards to SEO for WordPress sites or WooCommerce sites, it’s no different from regular SEO. The same principles apply to WordPress as well whether it is on-page, off-page or technical SEO. WordPress is not perfect but is quite flexible and easy to use. Self-hosted WordPress sites give you access to the code and the server. This is not something you get with Shopify or Wix sites. WordPress has a large open-source community with plenty of plugins available.
Using WordPress out of the box isn’t going to help you rank in Google. You need to make sure that your site speed is lightning fast, and that your technical & on-page SEO is structurally sound alongside a solid off-page SEO strategy.
What makes for a good WordPress hosting solution?
Look for a reliable and fast WordPress-managed host that uses NGINX as its server software. If you care about performance, avoid shared hosting with Apache webserver. WP Engine WordPress hosting comes with object caching (serves cached pages in HTML to speed delivery) and you can upgrade for media caching. WP Engine utilises MaxCDN to serve images from the closest local server. Flywheel is the other managed WordPress hosting I recommend.