SEO encompasses a wide range of small and large signals that all mix together into one big stew. You can think of your content as the meat, the site design as the broth base, and so forth. Yet no stew is complete without spices, and in SEO, those spices are the little things. There are a lot of little things.
The use of dashes – and underscores – in your URL can have some importance, but is it detrimental to your SEO? Let’s look at dashes, underscores, and other elements of your URL that might be important to Google and to your users.
Google’s Word on Dashes
In any discussion like this, it’s generally a good idea to go as close to the source of the concern as possible. In this case, that means looking for any instance where Google, or a representative of Google, has put forth an official perspective on hyphen use in URLs.
Unfortunately, Google doesn’t have one big singular resource guide for SEO. Our lives would be so much easier if they gave out some kind of free manual, and their help center does give out some tips here and there, but there’s no one consistent resource. For a lot of smaller issues, you have to look at tertiary sources. Google’s main help center tends to focus on problems with technical implementation or actual SEO rules that will get you penalized.
I suppose that’s a good sign, right? If there’s no ruling explicitly stating “don’t use hyphens in your URL”, it’s not going to be against the rules, so it’s fine to use.
In this case, the closest resource we have is the former head of Google’s webspam team, Matt Cutts. Matt was, for years, the best resource many of us had for changes to Google’s algorithms and what they meant. He posted this information both on YouTube and on his own website, which still holds those posts archived for our reference. And a good thing, too, as you’ll see in a moment.
Unfortunately, there hasn’t been a new webspam public official to step in and take Matt’s place. Google still publishes the occasional video and article, but there’s no official public face the way Matt came to be. These days, he’s working for the US Government as part of the Digital Service, which he found important and impactful enough to resign from Google to pursue.
Digression and biography aside, Matt published a post in 2005 – ages ago in Internet years – discussing the dash and underscore issues. Historically, search engines couldn’t even parse punctuation. Google’s ability to parse the underscore and the dash, along with a couple of other punctuation marks, made it invaluable for programmers and other nerds looking for specific terminology that used them.
Ignoring his reminiscence about the old days before Google was the giant they are now, we need to skip to the last paragraph. Matt says “To answer a common question, Google doesn’t algorithmically penalize for dashes in the URL.”
I know that a single article from 2005 is not necessarily a good indicator of modern day SEO policy, but the fact is, it’s all we have. Not only is it all we have, it’s also likely to be fairly accurate. No new abuses or spam techniques have sprung up in the last twelve years to necessitate a change in policy regarding the hyphen, so the ruling still stands.
That’s all to say that Google will no penalize you for using a hyphen in your URL. Misusing a hyphen as part of a spammy URL can earn you a penalty, though, and hyphens have their own sets of problems. Let’s dig deeper.
Dashes for Definition, Underscores for Concatenation
First we can take a moment to define the purpose of both the – and the _. Often, when writing in a format that does not allow spaces, people will turn to the underscore to_write_something_with_human_readable_spacing. This works for a human reader, but is not necessarily how a computer will interpret the symbol.
In fact, typically computers will use the hyphen as a spacer, leading-to-something-like-this. The underscore is a concatenation signifier, meaning that it exists to differentiate words to humans but should not differentiate them to the computer. A_sentence_like_this would look like Asentencelikethis.
Enforcement of this is spotty, of course. It’s actually perfectly legal to have an underscore in a domain name, except for one thing; that only works for actual DNS names. You can’t actually use an underscore in the domain name of a site, since that’s actually a host name URL. That’s all part of technical documentation, though. The important thing to know is that:
- Hyphens are allowed in domain names themselves, as well as subdomains and subfolders. www.sub-domain.domain-name.com/sub-folder-1/ is a perfectly valid URL.
- Underscores are not allowed in domain names, but are allowed in subfolders. You can often see URLs like www.example.com/sub_folder/ that work just fine.
Other punctuation, except the ., cannot be used in URLs outside of parameters. Domain names are only allowed to use letters, numbers, and hyphens. The periods are there for technical purposes.
The Spammy Exact Match Domain Issue
The first area where we run into roadblocks with a hyphen in a domain name is the historical abuse of those domain names. The primary cause of this abuse was exact match domains.
Years and years ago, exact match domains were a boost to your search ranking. The idea was that a site focused on one specific keyword would likely have better content for that keyword than a site that had a more general URL. The URL would tell you something about the site, so you knew if it was the right place before you ever went there. It was, all around, beneficial to have your narrow niche site named after the narrow niche.
Of course, this meant that the pursuit of every incremental bit of value possible led webmasters to make as many exact match domains as they could for all of their keywords, often creating duplicate sites or spun sites that were little more than shell pages leading back to a central “money page.” Soon, exact match domains became a pretty good sign that the site at the other end was likely to be shit.
Around 2012, Google put out an update that massively devalued an exact match domain. This led a lot of SEO experts to conclude that using an exact match domain was now a penalty, though that was never the case. The value simply went from 100 to 20, rather than negative as many supposed. Google has, in many algorithmic updates since, pushed for solid branding. If you can make a solid brand out of The-Best-Silver-Faucets.com, by all means, go for it. If you can’t, it’s probably better to come up with something you can.
So, how does hyphenation come into play here? Many exact match domains used hyphens to make their exact match keyword come across more clearly. It was for human readability more than anything; exact match domains both with and without hyphens work the same. Hyphens are simply rare enough that they aren’t seen as much outside of EMDs.
Domain Availability and Competition
One reason some people consider using hyphens is when the domain they want is not available, but a hyphenated version is. For example, if SEOBlog.com was parked and I didn’t want to pay the domain parker to acquire it, I could potentially have gone for SEO-Blog.com.
There are some benefits to this, like not having to pay an exorbitant fee for a parked domain if such a fee exists. On the other hand, there are issues with it as well. The primary issue is actually with competition.
Let’s say I wanted to make a SEO blog, but SEOBlog.com is taken. I go ahead and make SEO-Blog.com. How do I convey it? How do I advertise it? If I talk about it to someone in person and mention I own the site, do I call it “SEO blog, with a dash” or “SEO hyphen blog” or “SEO dash blog”? The first one they’ll forget, the second one sounds goofy, and the third one might lead them to try out SEODashBlog.com.
Then there’s the issue that the owners of SEOBlog.com could see what is basically a trademark violation and take action against SEO-Blog.com. The same thing could happen if a competitor made SEOblog.net or SEOblog.org, or whatever you like. I couldn’t swoop in and make my own beverage company on cokacola.com, when Coke owns coka-cola.com, in a reverse situation. That’s probably why it’s parked to this day.
Other Human Comprehension Issues
I touched on this a bit above, but the human comprehension of a URL is incredibly important. Basically, imagine that someone is hearing about your site on the radio. Will they be able to remember your URL well enough to plug it into a computer later?
- SEOblog.com is good.
- SEO-blog.com is worse, because you have to convey that there’s a hyphen there, and they have to remember that there’s a hyphen there.
- My-SEO-Blog.com is even worse, because it adds yet another hyphen and another word, a generic word at that, to further remove clarity.
This is also the same reason why you don’t want to use numbers in your domain name, even though you can. At least, you don’t want to unless you’re certain you can make a brand around it. 7-11 has a brand based entirely around their name, so they can get away with using 711.com. Though the fact is, they actually use 7-eleven.com. They have 711.com and seveneleven.com both redirecting to their actual domain name.
Human issues are also why you always want to aim for a .com rather than another TLD. It can be clever to name your site del.icio.us, but the fact is, a huge portion of your audience just wants to type in delicious.com. Many brands that go with goofy TLDs to make a word end up rebranding or at least owning the .com version of the word just to capture the people who type it in wrong.
Hypens don’t always make things worse, though. Sometimes it can be necessary for clarity, because the URL is not case sensitive. For example, a man named Ben Dover probably doesn’t want bendover.com. Most people will initially read that as Bend Over and assume it’s a porn site.
Just… ignore the fact that bendover.com is a parked domain and ben-dover.com is a porn site. Counterexamples don’t eliminate the core issue.
Using a Human Readable URL Format
Now all of this applies to the core domain name itself, but what about all the subfolders and bits of the URL after the .com? Well, there, you can use whatever you like. Hyphens, underscores, it’s all legal, it just comes down to what’s best for you and your audience.
I tend to prefer using hyphenated format, which is generally considered the usual “human readable” format by CMSs like WordPress. This is because the alternative used to be either parameters or just numbers. Which of these would you prefer to see?
- www.example.com/webapp/app/site/homepage.asp?code=homepage&?sessionID=34879021
- www.example.com/blog/2018116
- www.example.com/blog/2018/1/blog-post-title-here
The answer is generally the third one. The first one is full of code that just makes it look messy and includes dynamic data that has an issue of its own. The second one is fine, but it doesn’t say much about the page. The third one, meanwhile, can have some keywords in it and can be useful to a reader.
The issue with parameters, by the way is due to duplicate content. If every visitor shows a different session ID, multiple visits from the Google bot will see the same page at different URLs. Even if it’s the same page, the dynamic URL causes issues. This is why canonicalization exists.
At the end of the day, you can use hyphens if you want, but it’s generally not recommended if it can be avoided. The hassles are many and there are no actual advantages unless you absolutely need the clarification.