• Technical SEO

Find and fix broken links on the site: check what leads to nowhere

Searching for and fixing broken links on the site means going through all addresses with fixing the response code, and then making a decision for each find: convert to an analogue, fix the link itself or deliberately leave it as an error. We do the detour ourselves and for free, because the number of broken addresses cannot be guessed in advance: sometimes there are ten, sometimes there are a thousand, generated by one failed rule. The most frequent finding in our sample is not a broken menu item, but a broken service file.

See how it works
Price
after a free audit
Guarantee
30 days after project sign-off
What are we doing?
bypassing all links, checking service files, redirects, working error page
after a free audit
Price
30
Guarantee

days after project sign-off

bypassing all links, checking service files, redirects, working error page
What are we doing?
3-12
Term of works

working days: depends on the number of finds, not the size of the catalog

free bypass, 1-3 business days, no access required
Before the estimate
robots.txt declares a sitemap, and at this address there is an error
The most common sampling defect
The HTML map for 89 links works, the XML map returns a success code and zero bytes
Measured contrast
position growth: no one published direct dependence
What we do not promise

Free crawl of the site with the search for broken links

This is the simplest test possible: go through all the links and see which ones don't lead anywhere. We do it ourselves and for free, because the result usually decides whether there is work here at all. Accesses are not required - the bypass starts with the site address.

What we measure

  • Internal links that lead to nowhereFull crawl of the site with the fixation of the response code for each link and with a list of the pages from which they lead to it.
  • Addresses declared in service filesThe most common finding: robots.txt links to the sitemap, and there is an error at that address. We encountered this repeatedly within the same sample.
  • Behavior of non-existent addressWhether the site gives a real error or shows a page with a success code - the second case spoils the index quietly and for a long time.
  • Blank pagesAddresses that match success but contain no content. Formally alive, practically useless - we found sections of the menu with only the title itself.
  • External linksLinks to other people's resources that have ceased to exist. It's a matter of visitor trust, not the index.
  • Blank pagesDefault texts left over from the template: descriptions like "Description of Shipping Terms" on the live site.

What you get

  • A list of all links with a failure response code, indicating where they are linked from.
  • A separate list of addresses declared in service files that do not work.
  • List of blank pages and stubs.
  • A short discussion of the findings, where the conclusions can be disputed.

Timeline: 1-3 working days

Why is it free

Because the bypass is automated and takes hours. And the result is unexpected even for those who are sure that everything is fine on the site.

What's next

Next is the correction: part is closed by transitions, part by updating links, part by filling empty pages. Each block is evaluated separately, and any of them can be waived.

Short form: your contact and site URL

  • Contract, act and 30-day warranty

    Every project gets a written contract: scope, deadlines, amount, acceptance procedure. After delivery — act and invoice, then 30 calendar days of warranty.

  • Sole proprietor & bank transfer

    The contractor is a registered sole proprietor. Payment by invoice with closing documents.

  • Rights & access — yours

    Code, design and materials transfer to you after full payment. Domain, hosting, repository and analytics are registered to you.

  • Client portal instead of email chains

    During the project you get access to a portal: contracts, invoices, acts and project status in one place.

  • European clients

    Among our work — projects for Norway, Bulgaria, Moldova and Spain.

  • Verifiable numbers

    Every case in the portfolio comes with a link to a live site and a technical measurement.

  • Audit first, then pricing

    There is no price list on the site intentionally: the scope of the same work differs multiples between clients.

  • We say "no" when unsure

    If the task isn't ours or the deadline is unrealistic — we tell you upfront.

What affects the price

Why two seemingly identical tasks are priced differently

  • How many broken addresses reallyThis is the only number from which everything is calculated here, and it is impossible to name it before going around. A dozen addresses - work for one evening. A few thousand — a separate stage for sorting the list and deciding on each group.
  • Where do they come from?A thousand broken addresses from one failed rule in a template are treated by editing that rule. A thousand broken addresses scattered over texts over ten years are treated only by hand - and these are different in the amount of work with the same number in the report.
  • Where the links liveThe menu, footer, and card template are just a few places in the code. Links inside product descriptions, blog articles, and banners are as many edits as there are records in the database; here sometimes it is cheaper to put a transition than touch the content.
  • Who decides the fate of each addressIf you have a person who in an hour says "this product was replaced with this one, and this promotion was just removed", the decision stage takes a day. If there is no such person, we propose options and wait for approval - and this is the longest part of the work, not the technical part.
  • Access to the serverPermanent transitions are set in the server configuration. Without access to it, there remains an option through the CMS module: it works, but on hundreds of rules it is noticeably slower and has a habit of taking off when the platform is updated.
  • The pace of changes on the siteA catalog where items disappear every week generates broken addresses continuously. Here, a one-time cleaning gives a short effect, and a regular bypass makes sense - and this is no longer a project, but a quarterly check.
Who it's for

Situations where this service delivers results

Scenario 1 of 5

The site lived for a long time without technical support

Products were removed, categories were renamed, the template was updated - and each such action leaves behind an address that someone still refers to. In the store of irrigation systems for 300 items, we measured exactly this condition: the non-existent address gives an error correctly, that is, the database is intact, and the XML sitemap next to it gives a success code and zero bytes, and only the HTML map with 89 links actually works.

We'll review your situation in a free audit
What's included

Complete list of work and what you get as a result

  • Full site crawl with response code capture for each internal link — so that the list is counted, not judged by eye
  • A separate check of addresses declared in robots.txt and in service files: these are several lines, and they most often lead to nowhere
  • Request a known non-existent address with a random suffix - this way you can see if the site gives a real error or shows a "nothing found" page with a success code
  • Searching for pages that respond successfully and do not contain content - formally alive, actually useless to the person who came to them
  • Detection of stub texts left over from the template, with a verbatim list: what exactly and at which address the visitor sees
  • Decisions for each address with a list before the start of work: switching to an analogue, editing a link or a deliberate mistake - the choice is yours, the design is ours
  • Editing internal links in menus, texts, cards and footers - so that the beating does not return after the first publication
  • Continuous server-level traversals for addresses worth saving, checking that no two- or three-hop chains have formed
  • An error page with a place to go: site search and links to main sections, while the response code remains the error code
  • An event in the analytics to display the error page — otherwise, the next batch of broken addresses will have to be searched again in a complete detour
  • Re-traversal after corrections with confirmation that the list is empty and with a list of what was intentionally left in error
When this service isn't right

What's not included — so there are no surprises at delivery

  • Writing content for blank pages is a separate job
  • Recovery of intentionally deleted pages
  • Working with other people's sites that link to your non-existent addresses
  • Forced removal of pages from the search engine index
Process steps

Transparent stages with approval at every step

Total duration:3–12 days

  1. Traversing and counting

    1-3 working days

    We go through all internal links, record the response code of each and the page from which they lead to it. Separately, we collect external links that have ceased to exist. The output is a table, not an impression.

  2. Service files and non-existent address behavior

    1 working day

    We check addresses declared in robots.txt, standard sitemap addresses, and the reaction to a known nonexistent address with a random suffix. Here we catch pages with a success code and empty content.

  3. Solutions for each address

    1-2 working days

    Let's go through the list together with you: what do we convert to analog, where do we correct the link itself, what do we intentionally leave as an error. We group cases of the same type so as not to discuss a thousand lines individually.

  4. Edits: links, transitions, error page

    2-5 working days

    We update internal links, put constant transitions at the server level, make an error page with search and exits to the main sections. We check that the rule did not generate a chain of two or three transitions.

  5. Control bypass and transfer

    1 working day

    Rerun with the same tool: the list should be empty, except for what was deliberately left out. We set the event to show the error page and explain how to read the indexing report further without us.

Did not find your case?

Describe how it works on your side — we will tell you whether “404 and broken links” fits and what it means in your situation. No brief and no call: one question, one answer.

Cases

Tasks and results in numbers — all metrics measured by us

store of automatic and drip irrigation systems, catalog of 300 items

Task
Check the integrity of the site after a long period without technical support.
Solution
Full crawl with response code check, separate check of service files and actual content of section pages.
Result
The basic setup turned out to be complete: a non-existent address gives an error, the HTML sitemap contains 89 working links. Then something else started. The XML map returns a success code and zero bytes. Five pages of services exist in the menu with only a title without text. Two of the five root categories are empty, the manufacturers section shows zero items. Template stubs remained on the combat site: the default page name, the description "my shop", the menu items "Category 1-4", the delivery page with the text "description of delivery conditions". Measurement 01.08.2026.

Ukrainian SaaS platform for rewriting product descriptions

Task
Check official files before public display of the project.
Solution
Running the addresses declared in robots.txt and checking the four standard sitemap addresses.
Result
robots.txt contains a line with a link to the sitemap, and the file itself gives an error - as do the other three standard sitemap addresses. That is, the search engine receives a pointer that leads to nowhere, and this is corrected with one file. At the same time, the platform itself is fast: the first response in 220.6 ms with 140.8 KB of markup, eight public pages. An additional finding: there is no counter on the landing, so registrations are not measured at all. Measured on 07/31/2026.

one-page website of a consulting company

Task
Check the technical condition of the single-page site after launch.
Solution
Bypassing document links and checking service files.
Result
There is only one internal link in the markup, the entire navigation has five anchors; the site is rendered in 254 ms with a weight of 102.1 KB, analytics really work here. The defect is the same as in the previous project: robots.txt declares a sitemap, and there is an error at this address. Plus not a single block of structured data — the search engine receives nothing structured about the company. Measured on 07/31/2026.
Technologies & integrations

What we build on and what it connects to

Stack

  • bypassing the script with fixing of response codes — counts everything where even one link leads; he will not see an orphan page that no one links to
  • Screaming Frog - breakdown by response codes with a list of source pages; the free version is limited to five hundred addresses
  • Search Console, indexing report - shows what Google itself tried to bypass; the data comes with a delay and is a sample, not a complete list
  • nginx and .htaccess — permanent transitions live on the server; without access there, they move to the CMS module with a loss of speed
  • 301 transition — transfers the address forever; on hundreds of rules, the list is kept in order, otherwise chains appear
  • custom error page - should return the same code as before; template that renders it with a success code and there is a soft 404
  • GA4 — an event to display an error page; the meter does not fix anything, it only shows

Integrations

  • Google Search Console
  • Bing Webmaster Tools
  • GA4
  • Cloudflare
Custom crawl against Search Console report

How this option differs from the alternative

What makes the listall internal links, including those that the search bot has not yet visited
When data appearson the day of the bypass, a full cut at once
Where do broken links lead from?the source page of each stroke is visible - it is corrected there
Pages without any incoming linkwill not find: the detour follows the links
What you need to get startedsite address
Conclusiongives a complete list of what is visible from the site
What we need from you

We can't start without this — best to prepare in advance

  1. The site address — the walkthrough starts without access, and the free part of the work requires exactly that.
  2. Access to CMS or templates to edit internal links in menus, footers and cards.
  3. Access to server or hosting panel for permanent redirects and error page.
  4. The decision regarding the addresses that were and disappeared: lead to analog or honestly leave it as a mistake. It's your decision, we're just showing the consequences of each option.
  5. One person from your side who remembers the history of the site: what was replaced with what and which sections were closed on purpose.

If something is missing — let us know, we'll help you gather it or do it as a separate task.

FAQ

Most frequently asked questions — with concrete answers

Do broken links hurt rankings?

No one has published a direct dependency, and it would be false to promise growth from fixing them. The damage is different and quite specific: the visitor stops at a dead end, and the bot spends traversing on addresses where there is nothing. In a large directory, the second is more expensive, because it takes longer for new pages to reach the index. There will be practically no effect on a website with a dozen pages - this is the honest limit of this work.

Where to start, if the site is a mess and it is not clear what to grab?

Our advice: not from internal links, but from official files. It's literally a few lines of text, checked in a minute, and that's where the beat most often sits. In two of the three sites we looked under this page, the robots.txt declared a sitemap that does not exist at the specified address. After that, menus and product cards don't look like such a daunting task.

The site returns a nice "nothing found" page - is that enough?

Only if a real error code is given along with it. If an error page comes with a success code, the search engine considers it a normal page and indexes hundreds of copies. This is a silent defect: everything looks correct in the browser, and you can only see it in the response code.

How do you distinguish between a real bug and a soft one?

Requesting an address that definitely does not exist: a random suffix of a dozen characters is added to your domain. Next, we look at three things — the response code, the length of the body, and whether there was a transition somewhere else. A true error returns an error code. Myaka gives a success code and a normal page. The third option, which we also encountered, is the transition to the main page, and for the search engine this is the same soft case.

Isn't it easier to set the transition from all non-existent addresses to the main one?

It's simpler, but it's exactly the same mistake they start with. The search engine interprets the mass transfer of non-existent addresses to the main one as a soft 404 and still throws them out of the index, and instead of an explanation, the visitor receives the main page and does not understand what happened to the link he came from. The transition is made where there is a real analogue: the product was replaced by the next model, the category was renamed. There is no analogue - an honest mistake and a useful search page.

Are blank pages a problem?

Yes, and common. We found a site where five sections of services exist as menu items, and on the pages themselves only a duplicated title; in the same place, two of the five root categories of the catalog give "no goods". Formally, everything works; in fact, a person who has come from seeking sees emptiness. Such pages are either filled or removed from the menu - there is no third working option.

What to do with stub texts from the template?

Clean up first. In the measured store on the battle site, the default page title, description from the template, menu items "Category 1-4" and pages with text like "here will be info" remained. It shows up in the release, your client reads it, and it gets fixed in hours. Compared to analyzing thousands of broken addresses, it is the cheapest part of the work with the most noticeable result.

How often to check and can we do without next time?

Once a quarter for a stable site and after every major structure change. Broken links appear by themselves: removed the product, changed the name of the category, updated the template. In order not to hire someone every time, at the stage of editing, we set an event to show the error page - then you see in the analytics that people are resting somewhere, even before the search engine notices it. The counter doesn't fix anything by itself, but it lets you see the problem without a complete bypass.

Submit your website address and we'll go through all the links and show you the ones that lead nowhere.

In response, a list of broken addresses with response codes and source pages, separate service files, separate empty pages and stubs. If the scan doesn't find anything, that's what you'll hear.

View cases
  • Reply within 2 hours
  • No commitment
  • We work under a contract

There is no price list on the site on purpose: the same work differs several times over between two clients, and a “from” figure explains nothing in that case. First a free audit — we count your pages, duplicates and speed — then we name the sum and the deadline and fix both in the contract.