GT Link Manager
GT Link Manager is a 100% free high-performance branded link manager for WordPress, no upsells, no premium tiers, no paywalls. It stores links in custom database tables (not custom post types), resolves redirects early on init, and keeps your site fast, even with thousands of links. Your links follow a clean URL pattern: yoursite.com/go/your-slug (the prefix is configurable and can even be removed on individual links). Official Page & Documentation | Free Training Course | REST API & AI Tools Guide Why GT Link Manager? A branded link is a redirect with a job: it has to resolve fast, survive a thousand siblings, and never become the slowest thing on the page. GT Link Manager stores links in custom database tables, not custom post types. It intercepts the request on init at priority 0, looks up the slug in a UNIQUE-indexed column, sends the redirect header, and exits. No theme loading. No template stack. No post query. Storing links as custom post types means a redirect wakes up more of WordPress than a redirect needs. Custom tables keep the resolution path short, and it stays short whether you have 20 links or 2,000. Key Features Fast direct redirects. Resolves links on init (priority 0) via direct DB lookup, no CPT overhead 301, 302, and 307 redirects. Choose the right redirect type for SEO, temporary, or method-preserving redirects Rel attribute controls. Set nofollow, sponsored, and ugc per link for proper SEO attribution Noindex support. Sends X-Robots-Tag: noindex header to prevent search engines from indexing redirect URLs Categories and tags. Organize links into categories with parent/child hierarchy and free-form tags Full admin list table. Search, filter by category/status, sort by any column, and perform bulk actions Quick Edit. Update URL, slug, redirect type, rel, category, and status inline without leaving the list Activate / Deactivate. Disable a link without deleting it; inactive links stop redirecting but stay in the database Trash and restore. Soft-delete links to trash with the option to restore or permanently delete CSV import and export. Import links from CSV with column mapping preview, or export filtered links; includes LinkCentral and Pretty Links compatible presets, supports any CSV though as it allows you to map fields manually. Block editor integration. A toolbar button lets you search your links and insert them directly into post content Branded URL preview. See the full branded URL as you type, with one-click copy Normal and Regex Redirects supported too. Don’t want to use a prefix like /go/ ? Sure thing. Use the GT Link Manager as an alternative to Rank Math Redirections, Yoast Redirects, Redirection plugin etc. Tested to be faster than these top tools. Geolocation targeting. Send visitors from different countries to different destinations on a per-link basis (e.g. India to amazon.in, the US to amazon.com). The country comes from a header your CDN already sends, whether that is Cloudflare, CloudFront, Vercel, App Engine, or an nginx/Apache GeoIP module, so there is no GeoIP database to install, no external API call, and no added latency. Adds roughly 20 microseconds to a geo-enabled redirect and nothing measurable to the rest. Click counting. An optional per-link counter, off by default. Turn it on and each link keeps a running total, shown as a sortable Clicks column and included in CSV export Click tracking integrations. For per-visit analytics, hook gtlm_before_redirect and send events to GA4, Plausible, Fathom, Matomo, or Simple Analytics Developer-friendly. Actions and filters for redirect interception, URL modification, capability control, cache TTL, and more Developer Hooks GT Link Manager provides a comprehensive set of hooks for customization: gtlm_before_redirect, action fired before redirect (use for click tracking or logging) gtlm_redirect_url, filter to modify the destination URL gtlm_redirect_code, filter to modify the HTTP status code gtlm_rel_attributes, filter to modify rel attribute values gtlm_headers, filter to modify redirect response headers gtlm_prefix, filter to override the URL prefix gtlm_capabilities, filter to override the required user capability gtlm_cache_ttl, filter to set object cache TTL for link lookups gtlm_geo_country, filter the detected country code (plug in any detection method you like) gtlm_geo_sources, filter the list of request variables checked for a country gtlm_geo_country_groups, filter country groups usable in rules (ships with EU) gtlm_geo_matched_rule, filter the resolved geo rule before the redirect is sent gtlm_geo_blocked, action fired when a visitor is blocked by a geo rule’s 404 fallback gtlm_link_not_found, action fired when a prefixed link cannot be resolved and a 404 is sent gtlm_404_on_missing_link, filter to disable the 404 for unresolved prefixed links and fall through to WordPress instead gtlm_trash_purged, action fired after trashed links are automatically purged, with the count and retention window gtlm_count_click, filter to skip counting a particular click (exclude logged-in editors, add bot filtering) gtlm_click_recorded, action fired after a click has been counted Click Counting Click counting is off when you install the plugin, and that default is deliberate. With it off, GT Link Manager logs nothing at all about a request, and the privacy statement it registers under Settings > Privacy says exactly that. Turn it on from GT Links > Settings and each link starts keeping one number: how many times it has been followed. That is the whole record. What it stores per click: nothing about the visitor no IP address no user agent no referrer no timestamp A single running total per link cannot be tied back to a person, a session, or a place, which is why enabling it does not drag your site into the analytics-consent conversation. The count is written after the redirect has already been sent to the browser, using fastcgi_finish_request() where the host supports it. On a test install without that function, which is the slower of the 2 paths, a redirect measured 9.0ms with counting on against 9.1ms with it off. Where the number shows up: a sortable Clicks column in the links table, hidden until you switch tracking on a Reset Clicks row action for a single link the total_clicks field in the REST API, read-only a total_clicks column in CSV export Use gtlm_count_click to skip clicks you do not want counted, such as your own logged-in visits. Counting is intentionally shallow. It answers “which of my links get used” and nothing else. Per-visit data, referrers, countries, and time series belong in a real analytics tool, and the Developer Reference has step-by-step guides for wiring gtlm_before_redirect into GA4, Plausible, Fathom, Matomo, Simple Analytics, or a click log table of your own. Free Training Course The GT Link Manager Training is a free course covering installation through developer integrations. Most lessons run 3 to 5 minutes, so you can read the 1 you need instead of the whole thing. Straight to the lesson for a specific feature: Getting Started covers the admin screens and your first link Managing Links covers editing, quick edit, status, and trash Link Categories covers organizing a large library Settings and Configuration covers the prefix, defaults, and advanced modes The Redirect System covers 301, 302, 307, and how resolution works Block Editor Integration covers the GT Link toolbar button and the Button block Import and Export covers the Pretty Links and LinkCentral presets and column mapping Geolocation Targeting covers per-country rules and CDN header detection REST API Reference covers every endpoint and its arguments Hooks and Filters covers all the extension points Troubleshooting covers redirects that do not fire and slugs that collide Source and Issue Tracker GT Link Manager is developed in the open. The full source, including the block editor code that ships compiled in the plugin, is on GitHub: Repository for the code and release history Issues for bugs and feature requests Releases for changelogs and downloadable builds A bug report with your WordPress version, PHP version, and the slug that misbehaved is usually enough to reproduce it. Support Support runs through the WordPress.org support forum for this plugin. That is the fastest route for every kind of problem, and it is the one to use first. Post there and the answer stays public, so the next person with the same redirect loop finds it without asking again. What helps a thread get solved on the first reply: your WordPress and PHP versions the link slug and the prefix you configured what you expected the redirect to do, and what it actually did whether a CDN or page cache sits in front of the site For a suspected bug in the code itself, GitHub Issues works too, and a security report should go to the maintainer privately rather than into a public thread. What Makes GT Link Manager Stand Out Plenty of plugins will shorten a URL for you. These are the things this one does that shaped how it was built. Everything is free. Geolocation targeting, the full REST API, CSV import and export, regex and prefix-free redirects, the block editor tools. There is no Pro tier holding a feature back, no upsell notice in the admin, no telemetry, and no account to create. Nothing here is a trial. Redirects resolve before WordPress wakes up. The lookup runs on init at priority 0, against a UNIQUE-indexed slug column in a custom table. Match found, header sent, exit. No theme, no template hierarchy, no post query, and no slowdown as the library grows. Dead links return a real 404. A trashed or deactivated link stops resolving and says so with the correct status code. It does not quietly serve your front page at HTTP 200, which is what turns a retired affiliate link into duplicate home-page content in a search index. Geolocation costs nothing when you do not use it, and no database when you do. Country detection reads a header your CDN already attaches, so there is no GeoIP file to install or keep updated and no external service in the request path. Links that do not opt in never trigger detection at all. The REST API covers the whole link lifecycle. Create, read, update, trash, restore, and bulk-categorise, with a self-describing schema. That makes the plugin scriptable, and it is why AI tooling can manage links without a browser session. Click counting stores a number, not a person. Turn it on and each link keeps a running total. No IP address, no user agent, no referrer, no timestamp. The write happens after the redirect has already gone out. Your links stay yours. CSV import reads other plugins’ exports so you can move in, and CSV export gives you everything back, geo rules included, so you can move out. Uninstall removes only what you tell it to remove. Honest limits, because they matter more than the list above: the click counter answers “which links get used” and nothing else. Per-visit detail, referrers, and time series need a real analytics tool, and the hooks are there for it country detection is only as trustworthy as the CDN in front of it. A forged header on an origin with nothing proxying it is still a forged header there is no automatic keyword linking. Links go where you put them it is a young plugin, and a young plugin has seen fewer edge cases than an old one Analytics & Advanced Integrations The Developer Reference includes step-by-step integration guides for: Analytics. Google Analytics 4 (GA4), Plausible Analytics, Fathom Analytics, Matomo, and Simple Analytics Tracking. Custom click logging to a database table, dashboard widget, and UTM parameter passthrough Automation. Webhook notifications for Zapier, Make, and n8n Advanced redirects. Role-based redirects (route by user role) and geo-based redirects (route by location) Customization. Custom response headers, hooks and filters reference REST API & AI Tools GT Link Manager has a full REST API that works with AI tools for programmatic link management. The REST API & AI Tools Guide covers authentication setup, all available endpoints, and integration with AI platforms including Claude Code, OpenAI Codex, WP-MCP, Novamira, Claudeus WordPress MCP, and WordPress MCP Adapter. Source Code The block editor assets (blocks/link-inserter/build/) are compiled from the source at blocks/link-inserter/src/ using @wordpress/scripts. The full source code is available in this plugin and on GitHub at https://github.com/wpgaurav/gt-link-manager. To build from source: cd blocks/link-inserter && npm install && npm run build
Top keywords
- link31×1.50%
- links28×1.35%
- redirect23×1.11%
- gtlm21×1.01%
- click15×0.72%
- filter14×0.68%
- covers13×0.63%
- gt12×0.58%
- redirects12×0.58%
- analytics11×0.53%
- gt link11×0.53%
- link manager11×0.53%
Muri Link Tracker
Muri Link Tracker is a powerful WordPress plugin designed to help site owners maintain their SEO health and user experience by identifying broken links, analyzing redirect chains, and detecting affiliate patterns — with background jobs and configurable resource limits. Muri Link Tracker scans links in the background and provides a dashboard for broken URLs, redirect loops and missing rel attributes. Throughput depends on your server, the size of the inventory and destination response times. Key Features Background Processing — Scans run silently via Action Scheduler, so your admin stays responsive and your front-end stays fast. Three Scan Modes — Launch a Full Scan of all content, a Delta Scan (only posts modified since the last scan) to save resources, or a Reset Data to wipe and start fresh. Live Progress Tracking — Watch the scan progress in real time with a progress bar, counters, and the ability to cancel mid-scan. Affiliate Link Detection — Automatically identifies affiliate links across 14+ networks (Amazon, Awin, CJ, ShareASale, Impact, Rakuten, ClickBank, PartnerStack, and more), including URL patterns commonly used for internal affiliate redirects. Redirect Chain Analysis — Classifies every redirect as a single hop, a chain of 2+ hops, or a loop, so you know exactly what to fix first. Destination Health — Finds the links that still return 200 but no longer lead anywhere good: a domain that expired, one that changed hands and now serves casino or spam content, or a URL that quietly landed on a parking page. Shows you what it observed — the domain it lands on now, the page title it read, the anchor it was compared against — and leaves the decision to you. Computed entirely on your own server. Affiliate Networks Breakdown — See at a glance how many links belong to each affiliate program (Amazon, CJ, Awin…). Modern React Dashboard — Real-time statistics, quick filter tabs (All / Broken / Redirects / OK / Pending), inline editing, and bulk actions in a polished admin interface built with the WordPress design system. Smart Filtering & Search — Filter by status, link type, or affiliate network, and search across URLs and anchor text instantly. CSV Export — Export your full link inventory with active filters applied, perfect for reporting and auditing. Silent Link Editing — Fix or remove a link directly from the dashboard without bumping the post’s modified date, with native revisions where enabled. Configurable Resource Limits — Adjustable batch sizes, timeouts, request delays, and recheck intervals to fit shared hosting or dedicated servers. Scan Resume — Interrupted scans pick up exactly where they left off. Gutenberg-Aware — Extracts links from Gutenberg blocks with block-level metadata, including button blocks and navigation links. What It Detects Broken links (4xx and 5xx HTTP status codes) Redirect chains and loops (single hop, multi-hop, infinite loops) Affiliate links via domain patterns, URL paths, query parameters, and rel="sponsored" Cloaked affiliate links (internal URLs that redirect to external affiliates) Missing rel attributes (nofollow, sponsored, ugc) Dead domains that no longer resolve, told apart from mere timeouts Destinations that changed hands: cross-domain redirects, parking and for-sale pages, pages whose identity changed since you linked them Timeout and SSL/connection errors Both internal and external links, categorized automatically Privacy Muri Link Tracker makes outbound HTTP requests to verify the status of links found in your content, and — when destination health is enabled — to read the title of the pages those links lead to. These requests use a clearly identified User-Agent string of the form Mozilla/5.0 (compatible; MuriLinkTracker/2.2.0; +https://your-site-url), which includes your own site’s address so the remote servers being checked can identify the source of the request. No third-party service is involved at any point. The plugin has no account, no API key and no cloud component: every check and every verdict is computed on your own server, and the only hosts contacted are the destinations your own content already links to. No personal user data is collected, stored, or transmitted to third parties. Development The release includes the matching React/JavaScript sources in admin/src/, along with package.json and package-lock.json. To rebuild the interface, run npm ci and npm run build from the plugin directory. Project development is also hosted on GitHub: https://github.com/nicolasdiolez/muri-link-tracker