The ultimate guide to an SEO Friendly URL structure
SEO friendly URLs are URLs that work well for both visitors and search engines. URLs in general describe the location of a document or page for visitors and search engines. Well chosen URLs are vital to good SEO performance. When it comes to URLs, follow these best practices:
- Keep your URLs descriptive and readable;
- Keep your URLs brief;
- Keep your URL structure consistent.
Apply the KISS principle: “Keep it simple, stupid”.
What is a URL?
URL stands for Universal Resource Locator. URLs describe the location of a document or page for visitors and search engines.
Best practices for SEO friendly URL structure
Google writes (opens in a new tab): “A site’s URL structure should be as simple as possible. Consider organizing your content so that URLs are constructed logically and in a manner that is most intelligible to humans.”
That makes sense, but how do you go about that?
We’ve broken SEO friendly URLs down to these properties:
- descriptive and readable
Examples of good and bad URLs
Here’s an example of a good URL:
and here’s an example of a bad URL:
Quickly audit the setup of your URLs. Discover what can be improved with ContentKing.
Descriptive and readable URLs
A potential visitor should get an idea of a page’s content just by looking at the URL. They will be much more inclined to click on a Google search result with a descriptive and readable URL.
Keywords in URLs
Include one or two important keywords in the URL. This helps both search engines and visitors understand what they can expect at the URL.
Avoid stopwords in URLs
Avoid stopwords (“grammar” words that don’t say much) in URLs. They don’t add value to URLs; they only make a URL less readable and longer.
Here’s an example of a good URL:
and here’s an example of a bad URL:
Avoid parameters in URLs
Avoid parameters in URLs as much as possible. They don’t express context to visitors or search engines and may even cause duplicate content.
Here’s an example of a bad URL structure:
We understand that in some cases you can’t avoid using parameters in URLs. In those cases, just minimize them.
Separate words using hyphens
Separate words in URLs using hyphens (
-). Even though search engines support underscores (
_) as word separators nowadays, your readers’ eyes prefer hyphens.
Don’t stuff URLs full of keywords
Stuffing URLs full of keywords hurts readability and is a clear sign of over-optimization, so avoid doing this. It doesn’t add any value, and it may even hurt your SEO performance.
Keep URLs short
Visitors and search engines both prefer short URLs, so keep URLs short. Use as few directories as possible, and if you can use just one, do so.
But short URLs are a technique, not the goal. Your goal is readable and logical URLs.
Keep URLs consistent
You need to choose one preferred way to build up the URLs on your website and stick to it. This preferred way of structuring your URLs is called your URL structure. But what preferences can you choose from? In order to answer that question, let’s look at the anatomy of a URL.
The anatomy of a URL
Let’s break down
Protocol: HTTP or HTTPs
Choose whether or not to serve your URLs over a secure connection, using the
It’s recommended to serve your URLs over
HTTPs. If you’re still making the switch from
HTTPs, make sure to 301-redirect requests for the
HTTP variant of URLs to the
HTTPs variant of URLs. And vice versa.
Subdomain or no subdomain
Choose whether or not you’ll use the
If you choose to use
www, make sure to 301-redirect requests for URLs without the
www subdomain to the URL variant with
www. And vice versa.
The domain name consists of a name and an extension: a Top Level Domain (TLD).
If you’re in the position to choose a new domain, choose one that’s short and easy to remember.
Directories in URLs
While it’s important to keep URLs as short as possible, it’s also recommended to group related URLs together on your website using directories. Directories can become useful for websites with even as few as 50 pages.
Are you having trouble organizing your URLs using only one level of directories because of the size of your website? You can use sub-directories if that helps bring back order but keep the amount of directories per URL as low as possible.
Choose short directory names, to keep your URLs as short as possible.
Here’s an example of good directory usage:
and here’s an example of bad usage:
Parameters in URLs
Parameters in URLs are often used to pass on data. As mentioned earlier, avoid using parameters in URLs as much as you can. These parameters don’t provide context to visitors or to Google.
Fragments in URLs to jump to a section
Fragments are used in URLs to be able to jump to a specific section within a page.
An example of a URL with a fragment:
# is the fragment and
king-kevin is the fragment identifier in this example.
URLs are case-sensitive, meaning that
https://example.com/url-A/ are seen as different URLs. Stick to URLs with lowercase characters only.
When creating links, it’s easy to make a typo which causes both versions of the URL to get indexed. This is duplicate content and should be avoided.
When a URL with uppercase characters is requested, it should 301-redirect to the version of the URL that’s in all lowercase characters, the canonical version. If that’s not possible, make sure to implement a canonical URL to the canonical version.
To slash, or not to slash?
Choose whether or not you’ll use a
/ at the end of each URL. If you choose to use it, make sure that URLs without the
/ at the end get 301-redirected to the URL variant with the
/ at the end. And vice versa.
Should I use an extension, or not?
You can choose to give URLs an extension, such as for instance
.aspx. However, it’s recommended to avoid extensions in URLs because otherwise:
- It makes URLs longer.
- It makes for more typos when people adjust a URL directly in their address bar.
- It makes migrating to a different platform more complex and riskier because you don’t have to migrate URLs, as they don’t necessarily change.
Define an Information Architecture
A website’s Information Architecture defines, among other things, how your content is made accessible to visitors. It defines the relationships among pages and what URLs and directories to use. Having an Information Architecture is great, as it provides everyone clarity about what URLs to use and forces you to think ahead about your URLs. This is important because the URLs you choose need to be future-proof.
Imagine having put in blood, sweat, and tears and finally seeing your organic traffic going up… In this moment of triumph, you don’t want to be changing directories or pages in URLs, as that requires implementing redirects to forward visitors and search engines to new URLs. So think ahead when you’re choosing URLs.
Example: if you’re participating in a competition year after year, and writing about it every year, then it doesn’t make sense to put the year in the URL. Choose a generic URL that can be re-used every year. Chances are you’ll be getting links from other websites to that page. You want to harness the authority that those links pass on. So keep things stable!
Using URLs to make links
URLs are used when making links. For instance, you can link to a page using a relative URL or an absolute URL.
Relative URL? Absolute URL? What’s that?
Relative URLs are URLs that don’t reference the protocol, subdomain, and domain. For example:
Absolute URLs are URLs that reference the full URL, including protocol, subdomain, and domain. For example:
When linking to pages within your own website, it’s recommended to use relative URLs, for two reasons:
- When you change domain names, you don’t have to change all your links. They’ll keep working.
- If you’re using a test environment with the same content as your production environment, relative URLs ensure the test environment is fully functioning.
Please note, however, that it’s not recommended to use relative URLs in canonical URLs.
URLs play an important role in your SEO performance. Choose URLs that are descriptive, readable, and short. Be consistent with the URLs in your website, and you’ll reap benefits.