=== Broken Link Checker by AIOSEO – Find & Fix Broken Internal, External & Video Links ===
Contributors: aioseo, smub, benjaminprojas
Tags: broken link checker, broken links, link checker, dead links, 404
Tested up to: 7.0
Requires at least: 5.7
Requires PHP: 7.2
Stable tag: 1.3.0
License: GPLv3 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.txt

Broken link checker that finds and fixes broken links, broken images, and dead video links to protect your site's SEO.

== Description ==

Broken links hurt your SEO and send visitors to dead 404 pages. Broken Link Checker by AIOSEO scans your whole WordPress site for broken links and shows you exactly which ones to fix. It checks internal links, external links, broken images, and video links, then lets you fix or remove them in a few clicks without editing each post by hand.

This free plugin connects to your AIOSEO account and scans up to 250 internal links every month at no cost, with credits that renew each month. Upgrade to a paid subscription to scan more internal and external links, monitor more frequently, and cover larger sites. [See Broken Link Checker pricing and upgrade here.](https://aioseo.com/pricing-broken-link-checker/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin)

= 🔗 Find Broken Internal and External Links =

Broken Link Checker monitors every internal link and external link on your WordPress website and reports which links work and which are broken. It crawls your content on a schedule and records the status of each link: a working 200 response, a 301 or 302 redirect, or a broken 404. You get a clear list of broken links to fix, so dead links never sit on your pages unnoticed.

= 🎥 Check Broken Video Links on YouTube, Vimeo, and More =

Video links break in a way that a normal link check misses. A YouTube or Vimeo page can still load and return a working status long after the video was deleted, set to private, or removed by the uploader. Broken Link Checker auto-detects video links and verifies that the video behind each link still exists. It checks the video itself across YouTube, Vimeo, and more than ten other platforms, then flags the ones that are gone so you can swap in a working video. This keeps tutorials, reviews, and any post built around an embedded or linked video from quietly going stale.

= 🖼️ Detect Broken Images =

Broken Link Checker also finds broken images. If an image file was moved, renamed, or deleted, the plugin reports the broken image URL next to your broken links so you can replace it before visitors land on a missing graphic.

= ☁️ Cloud-Based Scanning That Does Not Slow Down Your Site =

Broken Link Checker by AIOSEO runs as a cloud service connected to your AIOSEO account, so the link scanning happens on our servers instead of yours. Other broken link checker plugins crawl from your own server, which can spike resource usage, get your hosting account flagged, or cause your server IP to be blocked. With cloud-based link scanning, your site speed stays the same and your hosting provider has no reason to throttle you, even on large sites with thousands of links.

= 🎯 Granular Control Over What Gets Scanned =

You decide what Broken Link Checker monitors. Choose which post types to scan, such as pages, posts, and custom post types, and which post statuses to include, such as published, draft, or pending review. This keeps the scan focused on the content that matters and your link credits spent where they count.

= 🚫 Exclude URLs You Do Not Want Checked =

Some links should not be checked at all. Affiliate links, tracking redirects, and third-party URLs that block automated requests can show up as false broken links. Broken Link Checker lets you exclude specific URLs and domains so your broken link report stays accurate.

= 🛠️ Fix Broken Links Without Leaving WordPress =

Finding broken links is only half the job. Broken Link Checker lets you fix them straight from the dashboard. Edit a link inline to point it at the correct URL, unlink it, or remove it, and the change is written back to your post automatically. You can clear out many broken links in a single sitting instead of opening each post one at a time.

Broken links are also marked in red on the frontend with the Broken Links Highlighter, so they are easy to spot, and the plugin can stop search engines from following broken links while you work through them. If you use the AIOSEO Redirects feature, you can send a broken link straight to a working URL with a redirect.

= 🏢 Who Uses Broken Link Checker =

Broken Link Checker works for any WordPress site that links out or links internally:

* **Bloggers and publishers** - keep years of posts free of dead links and broken video embeds.
* **eCommerce stores** - catch broken product links, broken images, and supplier URLs.
* **Affiliate marketers** - find broken affiliate links before they cost you commissions.
* **Agencies and freelancers** - monitor client sites and fix broken links from one place.
* **Local businesses** - make sure menu, booking, and map links keep working.

= 📋 Full Broken Link Checker Feature List =

* [Broken Link Checker](https://aioseo.com/features/broken-link-checker/?utm_source=wprepo&utm_medium=link&utm_campaign=liteplugin) - scan your whole WordPress site for broken links and fix them from one dashboard.
* Internal link checker - monitor every internal link between your posts and pages.
* External link checker - check outbound links to other websites for 404 errors.
* Broken video link checker - verify videos on YouTube, Vimeo, and 10+ platforms still exist.
* Broken image detector - find images that no longer load.
* Redirect detection - see which links return a 301 or 302 redirect.
* Cloud-based scanning - link checks run on AIOSEO servers, not your server.
* Scheduled automatic scans - links are rechecked on a regular schedule.
* Inline link editing - fix or update a broken link without opening the post editor.
* Unlink and remove - clear out dead links in one click.
* Broken Links Highlighter - broken links are marked in red on the frontend.
* AIOSEO Redirects integration - redirect a broken link to a working URL.
* Granular post type control - choose which post types and statuses to scan.
* URL and domain exclusions - skip affiliate links, trackers, and URLs you do not want checked.
* Link status filters - filter links by good, broken, redirect, or not yet checked.
* Broken link count column - see broken link counts in the AIOSEO Details post column.
* Link Distribution dashboard widget - view link health from your WordPress dashboard.
* Media link checking - index and check media file URLs.
* Second-chance rechecks - broken links are verified again client-side to reduce false positives.
* Free monthly link credits - scan up to 250 internal links every month for free.

= 🛡️ Built by the Team at AIOSEO =

Broken Link Checker is built by AIOSEO, the team behind the All in One SEO plugin used on more than 3 million WordPress websites. The same focus on practical, results-driven SEO goes into keeping your links healthy and your visitors out of 404 pages.

= 🔎 A Better Way to Check Broken Links Than Ahrefs, Screaming Frog & Other Tools =

If you have looked for a way to find broken links, you have probably tried tools like Ahrefs, Screaming Frog, Dr. Link Check, or Dead Link Checker. Those tools can crawl a site, but they run outside WordPress, so you copy URLs back and forth and fix every broken link by hand in the editor. Broken Link Checker by AIOSEO lives inside your WordPress dashboard. It finds broken links, broken images, and dead video links, and it fixes them in place. Because the scanning runs in the cloud, it does this without loading your server the way an on-site crawler plugin does.

= Credits =

This plugin is created by <a href="https://benjaminrojas.net/" rel="friend" title="Benjamin Rojas">Benjamin Rojas</a> and <a href="https://syedbalkhi.com/" rel="friend" title="Syed Balkhi">Syed Balkhi</a>.

= Branding Guideline =

AIOSEO&reg; is a registered trademark of Semper Plugins LLC. When writing about the WordPress SEO plugin by AIOSEO, please use the following format.

* AIOSEO (correct)
* All in One SEO (correct)
* AIO SEO (incorrect)
* All in 1 SEO (incorrect)
* AISEO (incorrect)

= What's Next =

If you like our Broken Link Checker plugin, then consider checking out our other projects:

* <a href="https://aioseo.com/" rel="friend" title="AIOSEO">AIOSEO</a> - The Best WordPress SEO plugin & toolkit to improve your SEO rankings in search results.
* <a href="https://optinmonster.com/" rel="friend" title="OptinMonster">OptinMonster</a> - Get more email subscribers with the most popular conversion optimization plugin for WordPress.
* <a href="https://wpforms.com/" rel="friend" title="WPForms">WPForms</a> - #1 drag & drop online form builder for WordPress (trusted by 5 million sites).
* <a href="https://www.monsterinsights.com/" rel="friend" title="MonsterInsights">MonsterInsights</a> - See the stats that matter and grow your business with confidence. Best Google Analytics plugin for WordPress.
* <a href="https://www.seedprod.com/" rel="friend" title="SeedProd">SeedProd</a> - Create beautiful landing pages with our powerful drag & drop landing page builder.
* <a href="https://wpmailsmtp.com">WP Mail SMTP</a> - Improve email deliverability for your contact form with the most popular SMTP plugin for WordPress.
* <a href="https://rafflepress.com/">RafflePress</a> - Best WordPress giveaway and contest plugin to grow traffic and social followers.
* <a href="https://www.smashballoon.com">Smash Balloon</a> - #1 social feeds plugin for WordPress - display social media content in WordPress without code.
* <a href="https://wpcode.com/">WPCode</a> - Must have WordPress code snippet management plugin to help you future-proof website customization (trusted by 1.5 million sites).
* <a href="https://duplicator.com/">Duplicator</a> - Popular WordPress backup and migration plugin used by over 1 million websites.
* <a href="https://www.pushengage.com/">Push Engage</a> - Connect with visitors after they leave your website with the leading web push notification plugin.
* <a href="https://trustpulse.com/">TrustPulse</a> - Add real-time social proof notifications to boost your store conversions by up to 15%.
* <a href="https://searchwp.com/">SearchWP</a> – The most advanced custom WordPress search plugin to improve WordPress search quality.
* <a href="https://affiliatewp.com/">AffiliateWP</a> – #1 affiliate management plugin for WordPress. Add a referral program to your online store.
* <a href="https://wpsimplepay.com/">WP Simple Pay</a> – #1 Stripe payments plugin for WordPress. Start accepting one-time or recurring payments without a shopping cart.
* <a href="https://easydigitaldownloads.com/">Easy Digital Downloads</a> – The best WordPress eCommerce plugin to sell digital products (eBooks, software, music, and more).
* <a href="https://www.wpcharitable.com/">WPCharitable</a> - Top-rated WordPress donation and fundraising plugin for WordPress.
* <a href="https://sugarcalendar.com/">Sugar Calendar</a> – A simple event calendar plugin for WordPress that's both easy and powerful.

Visit <a href="http://www.wpbeginner.com/" rel="friend" title="WPBeginner">WPBeginner</a> to learn from our <a href="http://www.wpbeginner.com/category/wp-tutorials/" rel="friend" title="WordPress Tutorials">WordPress Tutorials</a> and find out about the <a href="http://www.wpbeginner.com/category/plugins/" rel="friend" title="Best WordPress Plugins">best WordPress plugins</a>.

== Installation ==

1. Install Broken Link Checker by AIOSEO either through the WordPress plugin directory or by uploading the plugin files to your server.
2. Activate the plugin through the Plugins screen in WordPress.
3. Connect the plugin to a free or paid AIOSEO account when prompted. This is required because the link scanning runs as a cloud service.
4. Choose which post types and post statuses you want to scan in the settings.
5. Broken Link Checker starts scanning and reports any broken links, broken images, and dead video links in your dashboard.

== Frequently Asked Questions ==

= Does Broken Link Checker slow down my website? =

No. The link scanning runs on AIOSEO's servers rather than your own, so checking your links does not use your site's resources or affect page speed.

= Do I need an account to use Broken Link Checker? =

Yes. Because Broken Link Checker runs as a cloud service, it requires an AIOSEO account. The free account scans up to 250 internal links per month, and those credits renew every month.

= Can it check external links and video links? =

Yes. Broken Link Checker checks internal links, external links, and broken images. It also checks video links and verifies whether the video still exists on YouTube, Vimeo, and more than ten other platforms.

= How does it check broken video links? =

A video page can return a working status even after the video was deleted or made private. Broken Link Checker detects video links and checks the video itself, so it can flag videos that are gone even when the URL still loads.

= Can I fix broken links without editing each post? =

Yes. You can edit, unlink, or remove a broken link directly from the Broken Link Checker dashboard, and the change is saved back to your content for you.

= How often does it scan for broken links? =

Broken Link Checker runs automatic scans on a schedule. Paid subscriptions can monitor more frequently and cover more links.

== Changelog ==

**New in Version 1.3.0**

* New: Video support - Broken Link Checker now auto-detects video links and checks whether the linked video still exists, instead of just making sure that the link works. YouTube, Vimeo and 10+ platforms supported!
* New: Broken links are now scanned a second time client-side to reduce false-negatives due to WAF blocks or timeouts.
* Updated: Added support for HTML API for WP 6.6 and above to make link updates/removals more reliable.
* Updated: Added a license recheck action link to settings to refresh subscription data (useful in case of connection issues/subscription upgrades) + an indicator for the amount of sites that are active under the subscription.
* Updated: Added a mechanism to prevent duplicate actions from being scheduled.
* Updated: Link Assistant and Broken Link Checker now clean up database rows for trashed, private, or deleted posts so tables don't accumulate invisible bloat over time.
* Updated: Hardened options against unintended frontend exposure.
* Fixed: Setup Wizard sometimes not triggering due to missing cache table.
* Fixed: Relative URLs are now resolved against the post permalink before storing them to the DB.
* Fixed: Malformed URLs sent to Broken Link Checker server in rare cases.
* Fixed: Scan sometimes getting stuck due to duplicate rows in the DB.

**New in Version 1.2.10**

* Fixed: PHP error when connecting BLC when AIOSEO is not active.

**New in Version 1.2.9**

* Updated: Links that have never been checked before are now prioritized better.
* Updated: Improved scheduled action scheduling to prevent duplicate actions.
* Updated: Improved request handling with concurrency guards and caching to reduce outbound request volume.
* Updated: Added transient fallback mechanism for caching in case aioseo_blc_cache table doesn't exist.
* Updated: Various performance improvements.
* Fixed: Subsite database table cache no longer includes tables of all other subsites for multisites.
* Fixed: Rare issue where some links wouldn't be indexed due to special characters like new lines.

**New in Version 1.2.8**

* Updated: Changed wording to reflect that free subscriptions never expire, but that their quota resets each month.

**New in Version 1.2.7**

* New: Users using AIOSEO, Broken Link Checker and Link Assistant now see their broken links count in the AIOSEO Details post column.
* Updated: Compatibility with WordPress 6.9.
* Updated: Cache class now uses JSON instead of PHP serialization to prevent cache misses when charsets don't match.
* Updated: Various database performance improvements.
* Updated: Hardened database queries against SQL attacks.
* Fixed: "Good" filter now no longer shows URLs that still need to be scanned for the first time.

**New in Version 1.2.6**

* New: Added Link Distribution dashboard widget to the WordPress admin dashboard.
* New: Added reminder emails to inform users when Broken Link Checker is not connected.
* Updated: All BLC plans, including free, now support external links.
* Updated: The free BLC plan now includes 50 more links for free, for a total of 250.
* Updated: Added warning messages when indexed link count is larger than plan link quota or link quota is (almost) depleted.
* Updated: Added hook to filter URLs when they are indexed to add compatibility with WP Offload Media.
* Updated: Hardened REST API routes and added permission checks to improve security.
* Fixed: Link scan sometimes getting stuck if AIOSEO is not installed due to missing function.

**New in Version 1.2.5**

* Fixed: Link status scan sometimes getting stuck due to URL hash collisions.
* Fixed: Free plan not indicating that external links are not supported.

**New in Version 1.2.4**

* Updated: Hardening of ORDER BY/LIMIT clauses for database queries.

**New in Version 1.2.3**

* Updated: Added support for updating/removing relative URLs.

**New in Version 1.2.2**

* New: Added support for indexing and checking media URLs.
* Updated: Improved link removal process to increase rate of success.
* Fixed: Link Status row now closes after performing a table action to ensure no data leaks through to the next row.

**New in Version 1.2.1**

* New: Added a "Not Checked Yet" filter for new, unchecked links to the links table.
* New: Added an alert to the link info modal to indicate the date when the link will be rechecked.
* New: Added an admin notice to inform users when they have not connected Broken Link Checker yet.
* Fixed: Image URIs could cause catastrophical regex backtracking, freezing up the site.
* Fixed: Links with leading/trailing spaces in their URL or anchor text could not be edited or unlinked.
* Fixed: Broken links sometimes not highlighted for pages and CPTs.

**New in Version 1.2.0**

* New: Broken Links Highlighter - The new highlighter marks broken links on the frontend of your website, making it easier for you to find and fix them.
* New: AIOSEO Redirects Integration - BLC now integrates with AIOSEO Redirects so that you can easily redirect broken links to a working URL.
* Updated: Added additional inline error alerts for better user experience.
* Fixed: URLs with encoded characters could not be scanned because they were incorrectly hashed in the database.
* Fixed: URLs for media files (with the exception of images) are no longer indexed.
* Fixed: Unified URL rows now correctly respect the included post types, included post status, excluded posts and excluded domain settings.
* Fixed: When deleting a post, the confirmation modal now correctly shows up again.

**See our [changelog on aioseo.com](https://aioseo.com/changelog/broken-link-checker/?utm_source=wprepo&utm_medium=link&utm_campaign=blc) for previous releases.**

== Upgrade Notice ==

= 1.3.0 =

Broken Link Checker now checks video links on YouTube, Vimeo, and 10+ platforms, rechecks broken links client-side to reduce false positives, and includes several fixes and performance improvements.