# Health Monitoring

> **TL;DR:** Link Manager Pro scans your content for broken outbound links using HTTP HEAD checks and logs 404 errors from real visitor traffic on your site. Scans run automatically via WordPress cron. You can create a redirect from any broken link in one click.

Detect broken links in your content and catch 404 errors from real visitor traffic.

## What Is Health Monitoring?

Health monitoring finds broken links before your visitors do. It checks destination URLs in your content and logs 404 errors that real visitors encounter on your site.

## Health Issue Types

Link Manager Pro tracks two types of health issues:

| Type | Source | Description |
|------|--------|-------------|
| **content** | Content scanning | Broken links found by scanning post content. The plugin sends an HTTP HEAD request to each URL (3-second timeout). A status code ≥ 400 or 0 (connection failure) marks the link as broken. |
| **traffic** | Live visitor traffic | 404 errors detected when a real visitor hits a URL that returns a WordPress 404 response. |

## Content Scanning

When a content scan runs, the plugin:

1. Extracts URLs from the HTML of a post's content.
2. Sends an `HTTP HEAD` request to each URL with a 3-second timeout.
3. Marks the URL as broken if the response status is **≥ 400** or **0** (connection failure).
4. Processes a maximum of **10 URLs per post** per scan.
5. Skips masked URLs (those are already managed by the plugin).

### Scan Schedule

Configure the scan schedule in **Settings → General** under **Health Scan Schedule**:

| Schedule | Behavior |
|----------|----------|
| **Disabled** | No automatic scanning — you can still run scans manually (default) |
| **Daily** | Runs once per day — catches problems quickly, uses more resources |
| **Weekly** | Runs once per week — good balance for most sites |

Each scheduled run scans **5 posts**. The plugin picks up where it left off on the next run, cycling through all your published posts over time.

### Manual Scan

You can scan your content for broken links at any time without waiting for the schedule:

1. Go to **Link Manager Pro → Link Health**.
2. Click **Scan**.
3. The plugin scans your published posts in small batches (up to 5 posts per batch) with a 15-second time limit per batch.
4. Progress updates appear as each batch completes.
5. When all posts are scanned, the results appear in the health issues list.

## 404 Detection from Visitor Traffic

Link Manager Pro detects 404 errors in real time as visitors browse your site:

1. A visitor hits a URL that returns a 404 response.
2. The plugin checks whether a **Redirect** exists for that URL.
3. **If a redirect exists** → the visitor is automatically sent to the mapped masked link.
4. **If no redirect exists** → the plugin logs a "traffic" health issue with the URL, referrer, and hit count.

Each subsequent visitor hit to the same 404 URL increments the hit count on the existing issue rather than creating a duplicate.

The plugin ignores 404s for static assets (images, CSS, JS, fonts) and common bot paths (wp-login, xmlrpc, wp-admin) so your health list stays focused on real content issues.

## Viewing Health Issues

Go to **Link Manager Pro → Link Health** to see all detected issues. You can filter issues by type (content or traffic), by status (active, ignored, or fixed), and search by URL or referrer.

### Issue Statuses

| Status | Description |
|--------|-------------|
| **active** | Issue needs your attention |
| **ignored** | You marked it as not a problem — hidden from the active list |
| **fixed** | Issue has been resolved (e.g., redirect created) |

If the plugin re-detects a previously ignored or fixed issue (e.g., a link breaks again or a visitor hits the same 404), the issue returns to **active** status automatically.

## Creating Redirects from Health Issues

When you find a broken link, you can create a redirect directly from the health dashboard:

1. Go to **Link Manager Pro → Link Health**.
2. Find the broken link.
3. Click the **"..."** action menu in the right column.
4. Select **Create Redirect**.
5. Enter the destination URL (where visitors should go instead) and choose a redirect type (301, 302, or 307). You can optionally set a custom slug for the masked link.
6. Submit the form. The plugin creates a masked link with a redirect mapping for the broken URL and marks the issue as **fixed**.

### Ignoring Issues

If a link is working but flagged incorrectly:

1. Click **Ignore Issue** from the action menu.
2. The issue moves to "ignored" status and no longer appears in the active list.

### Deleting Issues

You can permanently remove individual health issues or clear all issues at once:

- **Delete a single issue** — click the action menu on any issue and select **Delete**.
- **Clear all issues** — remove all health records, optionally filtered by type (content or traffic).

## Link Coverage Score

Link Manager Pro calculates a coverage score from 0 to 100 that represents the overall health of your link portfolio.

### Score Grades

| Grade | Score Range |
|-------|-------------|
| **A** | 90–100 |
| **B** | 75–89 |
| **C** | 60–74 |
| **D** | 40–59 |
| **F** | 0–39 |

### How the Score Is Calculated

The score starts at 100 and applies weighted penalties:

| Factor | Weight | Max Penalty |
|--------|--------|-------------|
| Orphaned posts (no links) | 2 | 40 points |
| Weak posts (few links) | 1 | 30 points |
| Broken links | 3 | 30 points |

The plugin stores **weekly snapshots** of your coverage score for trend history, keeping a maximum of 12 weeks.

## Email Digest

Link Manager Pro sends you periodic email reports so you stay on top of link health without checking the dashboard.

### Digest Contents

- Coverage score, grade, and change since the last report
- Total links, clicks, orphaned posts, and broken links counts
- Top performing links with click counts
- Action items for issues that need attention

### Configuration

Configure the digest in **Settings → General** under **Digest Frequency**:

| Setting | Options |
|---------|---------|
| **Frequency** | Disabled (default), Weekly, or Monthly |
| **Subject line** | `[SiteName] Your Link Health Report` |

Each digest includes a nonce-protected **unsubscribe link** at the bottom.

## False Positives

Sometimes working links get flagged as broken.

### Common Causes

- Temporary server issues at the destination
- Geographic blocking (destination blocks your server's region)
- Rate limiting (destination throttles automated requests)
- Servers that block `HEAD` requests from bots

### How to Handle Them

1. **Test manually** — click the link in your browser to verify it works.
2. **Check from different locations** — use a tool like GeoPeeker.
3. **Adjust scan frequency** — weekly scans reduce false positives from temporary outages.
4. **Ignore the issue** — if the link works, mark it as ignored.

## Best Practices

- Review the health dashboard weekly.
- Fix broken links promptly — they hurt user experience and SEO.
- Create redirects for recurring 404 URLs that receive traffic.
- Use the coverage score to identify posts that need more links.
- Keep the email digest enabled for passive monitoring.
- Test links manually before ignoring flagged issues.

---

**Step-by-step guide:** [How to Find Broken Links in WordPress](https://docs.linkmanagerpro.com/guides/find-broken-links)
