MeerGuard VPN Browser Extension — Privacy Policy
Last updated: 2026-10-01
MeerGuard VPN is a browser extension that routes web traffic through our proxy nodes. This policy describes exactly what the extension sends off your device and what it keeps locally.
1. What the extension sends to our servers
- Your device identifier (device_uid). A random UUID generated on your device the first time the extension runs, stored in browser-local storage. Right after installation the extension sends it to our backend to create guest access, so the VPN works without registration; in return it receives guest tokens and an access key. Until you sign in it is not linked to your name, email, phone, or any identifier assigned outside the extension. When you sign in, it is sent along with the sign-in so that the backend moves your guest access and this month's free-tier usage to your account.
- Your IP address, to our API. Requests to our API (guest access, sign-in, server and location list, usage, account, device slots, country check) go directly, not through the VPN, so our API servers see your IP address, as any server you connect to does. Our server uses it to limit how many guest accesses can be created from one address.
- Sign-in details, if you choose to sign in. Email sign-in: your email address (to send you a one-time code), then the email and the code. Telegram sign-in: the extension opens our sign-in bot in Telegram; the bot receives the Telegram account details Telegram shares with any bot you write to (such as your Telegram ID and name), and the backend links them to your MeerGuard account.
- Your access key. Issued by our backend (for guest access, or after you sign in) or pasted by you in Settings. Sent to our proxy node as the connection password; the node checks it with our backend. The extension sends it to no one else.
- Your account session tokens. Sent to our backend with account requests: to load the server and location list, your free-tier usage, and your account summary (email, subscription status and end date, number of devices), and to renew the session.
- Your chosen exit country. When you pick a location, the choice is sent to our backend and stored with your access key, so our nodes route you through that country.
- Device details for your subscription's device slots. Like our apps, the extension takes one of a paid subscription's device slots. When you are signed in, on every connection it sends our backend a device ID derived from
device_uidby a one-way hash, your operating system and browser name with its major version (read from the browser's user agent), and the extension version. With a paid subscription they are stored and shown in your device list on meerguard.app and in our subscription panel, so you can unlink the device; without one they are not stored. The same device ID is sent to our proxy node as the connection user name (also in guest mode). Signing out releases the slot (if our server is unreachable at that moment, the extension tells you to unlink the device in your account). When you open Settings → Account, the extension loads your subscription's device list (device names, operating systems, dates) from our backend to show it; unlinking a device sends that device's ID to our backend. The list is not stored. - The domain of each request you make through the VPN — because a proxy node cannot forward a request without knowing where it goes. For HTTPS sites the node sees only the domain name and port; page content stays encrypted between your browser and the site. Pages opened over plain HTTP pass through the node unencrypted, as they would through any network. Nodes keep aggregate counters (bytes and connection count) per user, not a per-request log.
- What does not go through the VPN. These sites see your real IP address: - With smart routing on (the default): Russian banks, Gosuslugi, the tax service, the Central Bank and the Bybit exchange, because they block foreign addresses. The list is built into the extension; our server can add sites of these same kinds to it, but cannot remove the built-in ones. - A short list of exceptions our server sends, and the server that hosts the rule file (see "Rule file" below). - Sites you mark "direct", all sites except the listed ones if you choose "Only on selected sites", and local addresses. - Our API (see above).
Such requests never reach our nodes. A site you mark "through VPN" goes through the VPN even if it is on one of these lists (our API and local addresses excepted). Turn smart routing off in Settings → Routing to send the listed banks, services and Bybit through the VPN too.
- Rule file. If our server names one, the extension downloads a routing rule file (the site list above) from that file server, at most about once an hour. The request carries no data about you; it goes directly, so the file server sees your IP address.
- Connection checks. While connected, about once a minute the extension checks that the VPN works: it calls our gateway (no data about you) and requests
www.gstatic.com/generate_204, a standard Google connectivity-check address, through the VPN (so Google sees our node's address, not yours; no cookies or other data are added). When you open the extension while disconnected, it calls our gateway at most every 30 seconds, so it can see which address the browser connected to (seewebRequestin section 3). - Country checks. While connected, about every five minutes the extension makes two requests. One goes directly to our backend, which answers which country the request came from (to warn you if another VPN on your computer intercepts traffic meant to go directly); the backend returns a country code only and does not log your IP address. The other goes through the VPN to the IP-check tool on our website (
meerguard.app/api/my-ip), to check that sites see the country you selected. When the VPN works, the website sees the address of our server, not yours. The extension keeps only the country code from the answer and sends no cookies with this request; the website's web server keeps its usual access log, as for any visit to meerguard.app. If traffic leaks past the VPN — exactly what this check exists to catch — that log and the website's hosting provider see your real IP address. - Buying a subscription. "Buy" opens
meerguard.app/pricingin a new tab. The link carries labels that tell our website the visit came from the extension (src=ext,utm_source=vpn_extension,utm_medium,utm_campaign). If you are signed in, it also carries your account email (email=…), so the website can prefill checkout; like any address you open, it is kept in your browser history. Payment happens on the website under its own privacy policy. - Uninstalling. After you remove the extension, the browser opens
meerguard.app/?ref=ext-uninstall. The link carries only that label. - Support emails you choose to send. "Email support" opens your own mail app with a diagnostics report in the message body (version and browser user agent, connection state, error codes, routing mode and number of rules, the country of the connected node, time zone and the countries from the checks above, whether you are signed in, device slot status, the start of the device ID — no IP addresses, no domains from your rules, no passwords, keys or tokens). Nothing is sent until you send the email yourself; the full report is also placed on your clipboard.
- Support chats in Telegram you choose to start. "Message us on Telegram" opens our support bot (@MeerGuardSupport_bot) in Telegram Web and places the same diagnostics report on your clipboard. Nothing is sent until you paste it into the chat yourself; what you send there is also processed by Telegram under its own privacy policy.
We do not send: the content of pages you visit, form values, cookies, browsing history, keystrokes, passwords entered on other sites, or any analytics.
2. What the extension stores on your device
Browser-local storage (kept until you sign out, change the setting, or remove the extension):
- Your device identifier (
device_uid). - Your access key (treated as a password).
- Session refresh token: your account's after you sign in, otherwise the guest one.
- Your routing rules and settings — which sites go through the VPN or around it, smart routing, Kill-switch, WebRTC blocking, the chosen exit country.
- The downloaded routing rule file.
- Connection state, error codes and device slot status (used by the popup and the built-in self-test).
Session storage in memory (cleared when the browser closes):
- Short-lived access tokens and the proxy credentials in use (access key and device ID).
- The last server, location and exception lists (so the extension can switch nodes when the network fails).
- Your account summary (email, subscription, number of devices), to show it in the popup.
- While you sign in by email: the email address, until the code expires.
- Results of the checks in section 1 (country codes, whether another VPN was noticed).
Signing out deletes your account tokens, the access key issued at sign-in (a key you pasted yourself is kept) and the account summary; the extension then requests guest access again, as after installation.
Stored data leaves your device only as described in section 1.
3. What the extension does with browser APIs
- proxy — sets the browser's proxy settings (a proxy server with an exception list, or a PAC script) and removes them on disconnect. If the connection fails while you want the VPN on and Kill-switch is on (the default), it blocks traffic that would go through the VPN until it reconnects. Only changes the proxy settings of the browser it is installed in; nothing outside the browser is affected.
- webRequest + webRequestAuthProvider — answers our proxy node's HTTP 407 authentication challenge with your access key and this install's device ID (as the user name), so Chrome does not show you a password dialog. Credentials are given only to our node. In addition, for requests to our own API hosts only, it reads the IP address the browser connected to, to notice another VPN on your computer (such VPNs use special address ranges); only a yes/no result is kept, in session storage. Request bodies are not read or modified.
- storage — the storage described in section 2.
- alarms — the periodic checks described in section 1, hourly rule list updates, and retries of a failed connection or guest access.
- privacy — not requested at install. The browser asks you for it only when you turn on "Block WebRTC" in settings (off by default). Then, while the VPN is on, and while traffic is blocked after a connection failure, it turns off WebRTC traffic that would bypass the proxy (
webRTCIPHandlingPolicy), so websites cannot learn your real IP address through it. The setting is removed on disconnect or when you turn the option off. No other privacy setting is read or changed. - contextMenus — the page menu items "route this site around/through the VPN" and "remove the rule". Only the page's host name is used, to create your routing rule on this device; page content is not read.
- <all_urls> host permission — required so the extension can answer the proxy authentication challenge for any hostname you may visit, and make the checks and downloads described in section 1. The permission is used only for that; the extension does not inject content scripts and does not read page content.
4. Who we share data with
- The proxy nodes we operate, for as long as needed to forward your traffic. Nodes are operated by MeerGuard.
- The hosting and email delivery providers of our servers and website process this data on our behalf (for example, the website's reverse proxy terminates TLS for meerguard.app, including the exit country check).
- Google, only in the connectivity check described in section 1 (no data about you).
- Telegram, only if you choose to sign in with Telegram or write to our support bot.
- No analytics providers, no advertising networks, no data sales.
Limited Use. We use the data described in this policy only to provide the extension's single purpose — routing your browser traffic through the VPN and managing your access to it. We do not sell it or transfer it to third parties except as listed above, do not use or transfer it for advertising or to determine creditworthiness or for lending, and do not allow humans to read it, except with your consent (for example, a support request you send us), for security purposes, or to comply with applicable law.
5. Retention
- Traffic counters — kept as long as your account or guest access exists so we can enforce the free-tier limit. Reset monthly.
- Your chosen exit country — until you change it or your access key is removed.
- Diagnostics on our side — kept for at most 30 days.
- Device slot records — while the device is linked to your subscription; removed when you sign out or unlink the device in your account. If signing out cannot reach our server, the record stays until you unlink the device in your account.
- The website's access log (including exit country check requests) — rotated after 14 days.
- On uninstall, all local data is removed by the browser. To also remove data on our side, contact us at support@meerguard.app.
6. Children
The extension is not directed at children under 13. We do not knowingly collect data from children.
7. Changes
Material changes will be shown as an update in the extension listing before they take effect. The Last updated date at the top of this page is authoritative.