11 WordPress SEO Tips for Developers

In doing our website SEO audits, we found that many sites have similar SEO challenges.  Many of the issues we come across can be very easily implemented in a more SEO-friendly way during development, versus trying to fix after launch.

1. Only use heading tags for content headings

It may seem convenient to use H1 in your site’s header, or H1 or H2 for headings in the sidebar, but you shouldn’t. Heading tags should be page-specific, and each one should describe in greater level of detail what the page is about.  There should only be one H1 tag per page and in WordPress this is typically the post or page title.

2. Keep all text visible on the page

If you don’t want something on the page that’s in the theme, do not push it outside of the page’s margins to hide it. Actually get rid of it! Search engines do not like it when you have something in the code that’s meant to be shown, yet you don’t put it on the visible part of the page.

3. Use the domain either with www or without

Not both. One should redirect to the other with a 301 redirect (see next step for details).

4. Use 301 redirects

Use 301 redirects to point all old URLs to their corresponding URLs on the new site.  Not doing this is like moving and not telling the post office where your mail is supposed to be forwarded.

Don’t forget mydomain/index.html if it applies!  This is the most common forgotten redirect we see and a very important one.

Check Google Search Console several times after launch for 404 errors and redirect these. You can find them under Crawl -> Crawl Errors in Google Search Console.

It’s best to do 301 redirects in the .htaccess file, but if there aren’t too many, you might be able to get away with using Redirection without slowing the site down too much.

5. Make sure alt tags are showing in the code for all photos

Search engines use alt tags to index images and figure out what your content is about. Using alt tags also makes content more accessible because screen readers will read them aloud to visually impaired people.

Sometimes we see custom post types that don’t show alt tags in the code even when the tags themselves are entered via the WordPress Media Library.

6.  Check page speed

Search engines don’t like slow sites and neither do users. There are many tools for checking page speed. One is at Google Search Console under Other Resources -> PageSpeed Insights or go here.  It gives a desktop and mobile scores and each gets a color: red, yellow and green.  Red is bad and green is best. Either make adjustments or recommend a different host for your client, if necessary.

7. Create and submit an XML sitemap to Google at launch

We like to use the Yoast SEO plugin functionality for this, but there are many options. Go to Google Search Console -> Crawl -> Sitemaps to submit it.

8. Fetch as Google(bot) and check how the site renders

This post will tell you everything you need to know:

How to Fetch as Google(bot) and Submit Your Site to Google

Step #7 in the post above, which is checking whether Google renders the site properly, is the most important part.  As part of this process, you can also submit the site to Google.


If you are using Google Analytics:

9. Give your client full admin privileges at the Account level Google Analytics

We see many developers who add new accounts for their client under their own account.  This means they can’t give the client full access/ownership of the account at the Account level without also showing their other clients’ data.  Have your client create a Google account if they don’t already have one, then create the Google Analytics account from there and give yourself access.

Here’s how to give permissions at the account level:

Step 1:

Google Analytics account levelGoogle Analytics account level
Step 2:
Google Analytics adding permissions

10. Put Google Analytics code in the right place

The traditional syntax goes before the </body> tag, the asynchronous and the Universal syntaxes go before the </head> tag.  We commonly see the two newer syntaxes before the </body> tag and this could produce inaccurate results.

If your client doesn’t have customized GA code, implement the Universal code. We recommend Google Analytics for WordPress.

If your client already has a Google Analytics account, here are instructions for them to follow to give you permissions in Google Analytics, so you can get their account number.  You can also get the account number from the code on their current site, but we’ve seen many times where this account number is not the one they have access to with their Google account.

11. Check to be sure there is only one copy of the Google Analytics code.

Multiple instances of the same tracking code really throws off the data Google Analytics collects.

I know this sounds really obvious, but more than half the time, we fine  2, 3, or  4 copies of the same code!  More is not better.

To do a quick check, search the code for “UA-” to find all instances because UA is at the start of every account number, therefore a commonality among the different code syntaxes.


Have questions or more tips? Let me know in the comments.

Leave a Comment