Next.js Link tag makes it fast to navigate between pages and has many benefits, but it comes with a big accessibility issue.

The issue is when you try to open the Link tag content, you won’t be able open it in new tab. It works as a onClick handler by default which is a big accessibility and SEO issue.

Search engines crawl pages by looking at the links in <a> tag. Since there’s no actual link when you use <Link> tag, search engines can’t see and recognise the link that you’ve set and hence it can cause Search Engines to ignore that link.

It’s also a big accessibility issue, when you define a link you expect it to act like a link and not a function assigned to a div. You should be able to open the links in new tab, or with Cmd + Click.

The fix

A simple Link tag use looks something like this:

<Link href="/blog">Blog</Link>

To fix the accessibility issue, all we need to do is wrap the contents of Link tag in a <a> tag. This will make it an actual link which you can open in a new-tab and which Search Engines can recognise.

Here’s how it looks:

<Link href="/blog">
  <a>Blog</a>
</Link>