This app runs inside the BotSurf browser. Don't have it yet? Get the app or extension now!

LinkedIn Message Read Receipt Blocker

Utilities · All
0 installs · Verified BotGentz app
Launch App
Opens in BotSurf — try it free, no account needed.
CategoryUtilities
PlatformAll
Pricing Free
Installs0
Download BotSurf to use — free
No account needed for free apps. Once BotSurf is open, find this app in Apps from the + menu.

About this app

WHAT IT DOES

This script prevents LinkedIn from sending read receipts (the "Seen" or "Read" indicators) when you view messages. When enabled, the script intercepts the network requests that LinkedIn uses to notify message senders that you have read their messages, and blocks them from being sent. It also removes visible "Seen" indicators from the messaging interface, so there is no visual trace that you have viewed a message. This gives you the freedom to read messages on your own terms without the pressure of the sender knowing exactly when you opened their message. The script works silently in the background—you can read messages normally, and the sender will not see a "Seen" indicator. You can toggle the blocker on and off at any time using the panel, and the status display shows whether read receipts are currently being blocked.

WHERE IT RUNS

The script runs on all LinkedIn domains (*.linkedin.com). It works in the main messaging interface (linkedin.com/messaging), individual message threads, popup message windows, and the message preview pane on the home feed. It handles both desktop and mobile views. The script observes DOM mutations to detect when new messages are loaded as you scroll through conversations, and applies the blocker to new messages automatically.

HOW TO USE

After installation, the settings panel appears on the left side of the screen with the gear emoji (⚙️). Open the panel to control the script:

- The main toggle "Block read receipts" enables or disables the blocker. When enabled, read receipts are blocked and seen indicators are removed. When disabled, read receipts work normally.

- The status display at the top of the panel shows whether the blocker is active ("Active - Read receipts blocked" with a green indicator) or inactive ("Inactive - Read receipts allowed" with a red indicator).

- Click "Refresh message view" to re-apply the blocker to all visible messages if you notice any seen indicators appearing.

- Click "Remove all seen indicators" to manually remove any visible "Seen" or "Read" indicators from the current message view without changing the blocker status.

The script works automatically once enabled—just open your messages and read as usual.

TECHNICAL SECTION — REAL MECHANISM

The script uses a multi-layered approach to block read receipts. First, it intercepts network requests by overriding the global fetch function and XMLHttpRequest.prototype.send. When the script detects a request URL containing '/messaging/' and '/readReceipts', it blocks the request by returning an empty JSON response instead of allowing the request to reach LinkedIn's servers. This prevents the read receipt from being delivered to the sender. Second, the script overrides the document's visibilityState and hidden properties to always report 'visible' and false respectively. This prevents LinkedIn from detecting when a tab is hidden and using that as a trigger to send read receipts. Third, the script scans the DOM for message elements and removes any existing "Seen" indicators. It attaches a MutationObserver to each message to watch for changes, and automatically hides any seen indicators that are added dynamically. The script uses WeakSet to track processed messages and avoid duplicate processing. When the blocker is disabled, all overrides are restored to their original state and seen indicators are shown again.

THE PANEL

The settings panel is built with BotGentz's BGPanel component. It is draggable via its header, allowing you to reposition it anywhere on the screen. The panel snaps to the left edge by default but can be moved freely. Click the gear emoji to collapse the panel into a small bubble, and click the bubble to expand it again. The panel remembers its position per page session. Press the Escape key to quickly close or minimize the panel. The panel includes a status flash bar that provides visual feedback when settings are changed or actions are performed. All settings save automatically via GM_setValue.

PLEASE NOTE

This script requires the free BotGentz browser extension to run. It does not function as a standalone Chrome extension and does not use chrome.* APIs. LinkedIn frequently updates its messaging interface and read receipt mechanism, which may break the script's network interception or DOM selectors. If read receipts are not being blocked, please check for script updates. The script stores only the enabled boolean via GM_setValue. No data is sent externally. The script never reads or writes password fields, hidden inputs, or file inputs. All DOM operations use safe methods (style properties, classList, WeakSet) and never use innerHTML. The script blocks read receipts at the browser level by intercepting network requests and manipulating the DOM—it does not prevent LinkedIn from tracking message views on their servers, but it prevents the sender from receiving the notification.

Similar Apps

Log in to BotGentz

Suggest an App

Tell us what you'd find useful — if we build it, we'll email you the moment it's ready.