When you’re investigating a site to see if it’s a place you want to try to post on, leave a comment on, or otherwise get a link from, one piece of information you may want to discover is whether the site uses followed or nofollowed links.
Whether or not a link is followed or nofollowed is important for SEO, though not as important as it once was. It’s a dichotomy between two elements, the link in its natural state and the link with a “nofollow” tag attached to it.
A nofollowed link is a link that tells Google not to count it in terms of SEO. Links in their natural state pass a certain amount of pagerank or link juice from the linker to the linkee. The amount varies depending on a lot of factors, like the position of the link, the anchor text, the industries of the two sites, how closely related the content is between the source and destination, and how much relative link juice each site has in comparison to the other.
When you nofollow a link on your site, you’re telling Google not to pass any of your link juice to that site. There are a variety of reasons why you might want to do this. If you consider that a followed link is a vote of confidence in the destination, you begin to see why. You don’t want to link to a shady spam site as an illustrative point in a post you write and have that link become an association between you and the spam site. You don’t want to open yourself up to spammers who want to get links from your site simply for the link juice, either. In fact, if you run a blog with a typical comments system, chances are all of the links in the comments are defaulted to nofollow, simply because spammers abused followed comment links.
You don’t need to do anything to make a link followed, it’s the default state. You have to add code to the link to make it nofollowed. That code goes in the <a> tag of the link, and looks like <a rel=”nofollow” …> in the link code itself.
Before we get into the specifics of how to detect nofollow links, I’d first like to take a moment to make sure you know about balanced link profiles.
When Google debuted nofollow, it was a way to combat spammers fishing for links on sites that were generally unrelated or would not want to associate with their sites. Spammers in ages past would be able to set a bot to post their link in a generic comment on blog posts around the web. They could rack up thousands of backlinks in the course of a few hours, and in doing so, their site would suddenly have thousands of links pointing to them, giving them SEO benefit. The same would happen for any user-submitted content site, including web forums with free registration or guest posting.
The other common way of fishing for backlinks is from guest contributions. You can still see old blog posts with lengthy lists of blogs with high pagerank, making them valuable targets for earning backlinks. Nofollow throws a wrench into that plan.
These days, Google can tell if you’re trying to build links artificially or if you’re building them naturally. If you’re only looking for link juice, you’re going to be seeking out links from followed sites, and you’re going to want to ignore nofollowed sites, because they don’t pass link juice. However, Google can see pretty clearly that you have 95% of one kind of link and can infer that you care more about your ranking than your audience or your content.
A balanced link profile will include plenty of nofollowed links as well. It’s a sort of trust factor; it’s not directly related to ranking, because giving nofollowed links ranking power defeats the purpose of the tag in the first place.
That said, nofollowed links do still have power. They don’t pass link juice, but they do pass traffic, and the anchor text can match your article title or brand name, spreading your name and information around the web. These are “implied links” and are starting to be more valuable as Google downplays the mechanical relevance of links.
The title implies that a website might be labeled either “nofollow” or “dofollow”, which isn’t strictly the case. Almost every website on the internet is going to have a mixture of both types of links. If nothing else, a lot of comments sections and user generated content plugins automatically nofollow their links, so even if the content of the site is followed, the comments won’t be. You can’t simply look for any instance of nofollow and assume that if it exists, every link is nofollowed, or if it doesn’t, every link is followed.
As with everything online, there are shades of gray. Most websites of any sufficient traffic and value to care about the sites they link out to are going to take links on a case by case basis. Even if the links in 99% of their blog posts are followed, they might still nofollow your link in a guest post because they don’t like the look of your site.
There are a lot of different tricks you can use to find whether a site is nofollowed or not. First up is the manual method.
The manual method is simple, but it involves using some features of a web browser you might not normally encounter. If you’re not a developer and you’re not used to looking at code, this method might be a little obtuse.
The first thing you want to do is load a page on the target site. Which page you load depends on your purpose with the site. Are you trying to guest post there? Find a guest post written by someone else and load that post. Are you trying to do a moving man link building outreach, or something of the sort? Load any generic blog post with links similar to what you might be targeting.
Next you want to scroll down to the bottom of the post. The reason I recommend you do this is to fully load in everything on the page. A lot of sites these days lazy load content, so you want to make sure as much of the site is loaded in as possible. Close any overlays, exit intent pops, or lightboxes that get in your way.
Now you need to find a link on the page that accurately represents the kind of link you would be getting. Don’t test a sidebar link if you’re looking for an in-content links, and don’t test a comments link if you’re not targeting comments. I can tell you right now, 99% of the time the comments link is going to be nofollowed regardless.
Now you need to right click on the link and inspect the element. In Chrome by default “inspect element” is a context menu item. In Firefox the same is true, and other browsers generally have either a web developer console or a “view source” option. If you can’t inspect an element directly, you can view the source code of the entire page and search through it to find the specific link with specific anchor text you’re trying to locate.
A link will start with “<a” and will have a few different possible parameters. The “href” is the hyperlink reference, and is the destination of the link. If there’s a “target” parameter, it is specifying whether the link should open in a new window or in the same window. If there’s a “class” it’s a flag for CSS identification. What you’re looking for, though, is “rel”. The “rel” parameter is the “relationship” between your page and the page being linked. This can show up in a link to a CSS file for the page, but the only parameter you actually care about is “nofollow”. If it says “rel=”nofollow”” it means the link is not followed. If no such tag exists, or if one of the other possible parameters exists, the link is likely followed. However, this is not 100% true! There’s one more place to check.
Note: if the site uses “dofollow”, you can sit back and laugh at them a little bit if you want. There’s no such thing as a “dofollow” parameter for links. Links being followed is the default state; you don’t need to specify that a given link is supposed to be followed. It’s just meaningless extra code that doesn’t parse as anything.
The other place to check will require you to scroll all the way up in the source code. You’re looking for the <head> tag at the top of the HMTL document. This will often be full of all sorts of code you don’t need to pay attention to if you don’t want to. You’re looking for one specific line of code. This code is <meta name=”robots”>. This is a meta directive pointed specifically at search robots, like Google’s search spiders and web crawlers, or those for other search engines. What you might see in this entry is content=”nofollow”. If you see this, it’s the site owner telling the robots that every link on their site is meant to be nofollowed, without them having to plug in the nofollow attribute on every link they make.
You will often see this on individual pages full of links of low quality, used as a defense against link spam penalties. It doesn’t always work, but it’s there. It’s also going to show up more often on older sites and sites that don’t care about link juice, rather than modern sites, which will take links on a case by case basis.
As a side note, you might also see “noindex” added to the meta directive up at the top. If so, the page you’re on won’t be indexed in Google, so any links in it are automatically ignored. It’s as if that page isn’t actually published on the web. This is very rare, though, and generally exists for strange duplicates, old versions of sites cohabitating on the domain, or test pages.
The second method is a more automated method you can try out.
It involves adding a browser extension to your web browser, which will lay data over top of the pages you read. Depending on the plugin, it may have more data than you care about, or it may just show you the status of links. Here are a few possible toolbars:
If you want a plugin with more information, I highly recommend the MozBar toolbar from Moz. It’s only available for Chrome, and you can find it here. This toolbar will show you a ton of useful data for pages you visit, including the Moz ranks for Page and Domain Authorities, the spam score, the number of linking domains, and the analysis of individual links.