When you reference another page it’s important the destination is working, pointing users to a page that doesn’t exist can hurt organic visibility but above all else, impact the user’s experience of your website. There are a few ways you can identify these problematic links, additional ways to keep track of new ones and also an easier way to point links outwards. I don’t want to get into the finer details of the types of links, with do follow or no follow attributes, here it’s just running through links that point to 400 or 500 errors.
Using software such as SEMRush, Ahrefs, Screaming Frog and SiteBulb will identify broken links on your site. Google Search Console and Bing Webmaster Tools will also highlight not found internal links, although these types of tools are reactive whereas the above-mentioned software takes a live snapshot of the site and assess each link in real-time. It’s important to run the above software of your choice, check-in on Search Console as broken links can be volatile and live – once an audit has been completed it can become void in a matter of weeks.
If a page no longer exists, you need to decide if the current link is still required, if so, I’d then suggest changing the source link to point towards a new destination. So going into the HTML and updating the href link is the first port of call, if you need to keep the link that is. As a rule of thumb, always try and change the source link first, if this isn’t possible or commercially viable, it’s often best to serve a 301 redirect than a 404 error.
If you control the content you are linking to, the first port of call is to create a page redundancy procedure, this means you go through and identify any link reliance before changing the URL structure. If you are linking to third-party websites, it is a case of validating the content exists on a regular basis – Screaming Frog and SEMRush are good at validating third party links are still working too.
Additional comments when it comes to fixing internal broken links
- Affiliate links are different, I would propose creating a /out/number URL so you can mass change the source redirect. For example if I had several outbound links to one affiliate link, I would create shaneparkins.co.uk/out/1 and then to change all occurences across the site, I just have to update the redirect. I can also set robots.txt to prevent /out/ access if it’s affiliate links too.
- I’ve seen a lot of rewrites take place at the database too – so if you know a URL is mass placed on the site and is no longer available, and you can’t create content to fill the void, doing a query at database level to mass replace the URL can also be time-saving.
- Try to think at the time of writing if the link is something that will remain evergreen, if you haven’t got the time to constantly update it and it’s not too much of an issue, it’s probably best not to link to that page.