DEV Community

Sujal Goel
Sujal Goel

Posted on

My site was indexed on Google for three weeks and ranked for nothing. Every backlink I had was nofollow.

I shipped my portfolio on 23 July. Then I did what everyone tells you to do.

I put the link in my Upwork profile. In my GitHub bio. In my LinkedIn. In my X bio. I opened a pull request against emmabostian/developer-portfolios, which is a big curated list of developer sites, and it got merged into the README.

Two and a half weeks later I searched my own brand name and got nothing. Not page two. Nothing.

The wrong diagnosis

My first thought was the obvious one. Google has not crawled it yet.

That was wrong, and it cost me a week of looking in the wrong place. I opened Search Console and ran the URL inspection. It came back:

URL is on Google
Page is indexed
Structured data: 1 valid item detected (ProfilePage)
Enter fullscreen mode Exit fullscreen mode

The site was indexed the whole time. It ranked number one for site:hecodesforme.com. The search result rendered my exact title, my meta description and my favicon. Nothing about the page was broken, and nothing about it had ever been broken.

Indexed and ranking are two different things. I knew that as a sentence. I did not actually believe it until I watched it happen to me.

The real reason

Google ranks pages partly on links from other sites. A link only passes that signal if it is a normal link. If it carries rel="nofollow", it tells Google to not pass any ranking credit through it.

I went and looked at the actual HTML of every place I had put my link.

Every single one was nofollow.

  • Upwork profile: nofollow
  • LinkedIn profile: nofollow
  • X bio: nofollow
  • GitHub profile bio: nofollow

That is four out of four, and it is not a bug. Those are all sites with millions of user-editable profile fields. If they passed ranking credit, every one of those fields would be filled with casino spam inside a day. So they nofollow the lot. Correct decision by them, and completely invisible to me until I checked.

Then I found the one that actually annoyed me.

GitHub wraps links inside README files in nofollow too. So the pull request I wrote, that a maintainer reviewed, that got merged into a repository with a lot of stars, passes exactly zero ranking authority. It is good for humans who read that list. For Google it may as well not exist.

So my scoreboard after two and a half weeks of "doing SEO" was five backlinks and zero ranking signal. I had not done bad work. I had done work that could not possibly have produced the result I was waiting for.

The second problem, which is my own fault

My domain is hecodesforme.com. There are two things wrong with that string.

Search for hecodesforme and Google says "showing results for codeformer". CodeFormer is a popular face restoration tool and my brand is one letter away from it. Google assumes I typoed.

Search for he codes for me and Google reads it as a normal English sentence and gives you an AI overview about hiring someone to write code for you.

Neither of these is a technical problem. There is no tag I can add to fix it. Google resolves it only when it recognises the string as the name of a real thing, and that happens when enough people search for it and click the actual site.

If you are picking a domain, say it out loud, then type it into Google before you buy it. If Google autocorrects it to something else, you are signing up to fight that autocorrect for months.

How to check your own links in about a minute

Do not trust that a link counts. Go and look.

Open the page your link is on, view source, and search for your domain. Look at the anchor tag around it. If you see rel="nofollow" or rel="nofollow ugc" or rel="me nofollow", that link is not helping you rank.

If you want to do it faster, this is enough:

curl -s https://the-page-with-your-link.com \
  | grep -o '<a[^>]*yourdomain\.com[^>]*>'
Enter fullscreen mode Exit fullscreen mode

Read the rel attribute on whatever comes back. It takes thirty seconds per link and it would have saved me two weeks.

What I should have done first

The links that pass authority are the ones on sites where somebody publishes actual content. Not profile fields. Writing platforms, real directories, other people's blogs, project pages.

Profile links are still worth doing, to be clear. They send real humans, and a person clicking through from my Upwork profile is worth more to me than a ranking position. Just do not count them as SEO, because they are not.

The thing I keep coming back to is that every step I took was a step people recommend. Fill in your profiles. Get on a portfolio list. All fine advice. None of it was wrong. It just could not do the specific job I was expecting it to do, and I never checked, because checking felt too basic to bother with.

That is the actual lesson. When something you built is not working, verify the assumption you did not think was worth verifying.

The site is at hecodesforme.com if you want to look at it. It is a portfolio, the WebGL is hand written, and as of today it still does not rank for its own name.

Top comments (0)