Broken Link Checker
Scan your site for broken links that frustrate visitors and hurt SEO. Find internal links pointing to deleted pages and external links to sites that no longer exist.
Use Cases
- Find broken internal links after deleting or moving content
- Discover external links that have gone dead over time
- Audit your site’s link health before a redesign
- Improve user experience by eliminating dead ends
How It Works
- Open the module settings in Switchboard
- Click “Start Scan” to begin checking all links
- The scanner crawls through published posts and pages
- Each link is tested for response status (200, 404, timeout, etc.)
- Results show which links are broken and where they appear
What Gets Scanned
The module scans links in:
- Published posts
- Published pages
- Both Classic Editor and Gutenberg block content
Link Types Checked
| Type | Example | Checked For |
|---|---|---|
| Internal | /about-us/, /blog/post-title | 404 errors, unpublished status |
| External | https://example.com | 404, timeout, DNS failure |
Note: Anchor-only links (#section-name), mailto:, tel:, and javascript: links are skipped.
Scan Results
After a scan completes, you’ll see:
- Posts Scanned: Number of posts and pages checked
- Unique URLs Checked: Total distinct URLs tested
- Broken Links: Links returning errors
Result Details
For each broken link, the report shows:
| Column | Description |
|---|---|
| Post/Page | Link to edit the source content |
| Broken URL | The URL that failed |
| Type | Internal or External |
| Error | The error message or status code |
Understanding Status Codes
| Status | Meaning | Action |
|---|---|---|
| 404 | Page not found | Update or remove link |
| 403 | Access forbidden | May be blocked; verify manually |
| 500 | Server error | Temporary issue; recheck later |
| Timeout | No response | Site slow or down; recheck later |
| Domain not found | DNS error | Remove link |
Fixing Broken Links
Option 1: Edit the Source
- Click the post/page link in results
- Find the broken link in the editor
- Update to the correct URL or remove it
- Update the post
Option 2: Create a Redirect
If content has moved:
- Note the broken URL
- Use Redirects Manager to create a redirect
- Point the old URL to the new location
Performance Considerations
Link checking makes HTTP requests to verify each URL. For large sites:
- Scan timeout: The scanner has a built-in timeout (~45 seconds) to prevent server overload
- Resume scanning: If timeout occurs, run the scan again—URLs are cached during the session
- External link limits: The scanner uses reasonable timeouts to avoid being blocked
Scanning a site with thousands of links may take several attempts due to timeout limits. The scan will indicate if it was interrupted.
Common False Positives
Some links may report as broken but actually work:
- Rate-limited sites: Sites that block automated checking
- Login-required pages: URLs that require authentication
- Geo-restricted content: Sites that block certain regions
Verify these links manually before removing them.
FAQ
How long does a scan take?
Depends on your site size. The scanner has a ~45 second timeout per scan. Sites with many links may require multiple scans.Will scanning affect my site’s performance?
Minimally. Internal link checks use fast database queries when possible. External checks are throttled with timeouts to avoid impacting your server.Does it check links in comments?
No. The scanner focuses on post and page content only.Why does a working link show as broken?
Some sites block automated requests or require specific headers. Try visiting the link manually to verify.Does it scan custom post types?
Currently, the scanner checks posts and pages. Custom post types are not included.Get access to all 147 modules with a single license