Unbreak checks the links on your site from your own server. It needs no account, no API key and no credit card. Sites that block automated checks (Amazon, LinkedIn, Cloudflare challenges) are listed as “Couldn’t verify” instead of broken, and a link is only marked broken after repeated failures over time. It finds links in post content, Elementor data, menus and widgets. You can fix them in bulk: every change is previewed first, and the last bulk action can be undone in one click. Redirects and a 404 log are built in.
Many sites answer automated requests with 403, 429, 503 or 999, or with a bot challenge page. Those answers say nothing about whether the page exists, so Unbreak lists such links as “Couldn’t verify”. You can add more hosts to this list under Settings.
A failing link is first shown as “Re-checking (not confirmed yet)” and checked again later. It is only marked broken when it keeps failing: a 404 twice, at least 6 hours apart; server errors and timeouts three times over at least 24 hours.
_elementor_data)Links to your own dashboard, login page and other admin URLs are ignored.
Create 301, 302, 307 and 308 redirects, with CSV import and export, hit counters, and loop and chain protection. Optionally log which missing pages visitors request. IP addresses are not stored.
Unbreak checks the URLs found in your site’s own content: posts, pages, menus, widgets and, if enabled, comments. To do that, your server sends HTTP requests (HEAD, and a short GET when needed) directly to those URLs. Only the URL is requested, with a browser-like User-Agent that you can change in the settings. Nothing about your site, your visitors or your content is added. Checks run after activation, when content changes, and when a link is due for a re-check (every 7 days by default).
Unbreak does not contact any other service, and it contains no tracking or analytics.
The admin screen is a small React app. Its uncompressed JavaScript and SCSS sources are included in the plugin under assets/src/, together with the build configuration (package.json, package-lock.json, webpack.config.js, babel.config.js). The built files in assets/build/ are not minified either.
To rebuild assets/build/ from the sources, run this in the plugin folder (Node.js 22.22 or later):
npm ci --legacy-peer-deps && npm run build
The PHP code is not compiled. The only bundled library is Action Scheduler in vendor/, installed with Composer from composer.json.