Privacy policy
Last updated 25 July 2026. Applies to the OffMic Chrome extension and to the signaling server at offmic.xeron.be.
OffMic has no account, no sign-up, no tracking and no analytics. Your voice is encrypted end to end and travels straight to your teammates. It never passes through any server, including ours.
The short version. Two things leave your machine: the display name and team code you type, which the signaling server needs to put you in touch with your teammates, and your voice, which goes directly to those teammates and is unreadable to anyone else. Nothing is written to disk, nothing is sold, nothing is shared, and nothing is used to profile you.
What OffMic does
OffMic gives teammates a private voice channel during a Microsoft Teams meeting. It reads whether your Teams microphone is muted or live, and uses that single signal to decide where your voice goes. Muted in Teams, you are heard by your team. Live in Teams, that private transmission stops.
Data handled
| Data | Leaves device | What happens to it |
|---|---|---|
| Display name | Yes | Sent to the signaling server and relayed to your teammates so they can see who is speaking. You choose it freely and it does not have to be your real name. |
| Team code | Yes | Sent to the signaling server, which uses it to group the people who typed the same code. It is a rendezvous label, not an account. |
| Voice audio | Yes | Sent directly to your teammates over WebRTC, encrypted end to end by DTLS-SRTP. It never reaches our server and we cannot listen to it, decrypt it or record it. |
| Connection data | Yes | IP addresses and network candidates pass through the signaling server so two browsers can find a route to each other. They are held in memory for the duration of the session and never written down. |
| Your settings | No | Server address, team code, display name, listening preference, language, theme, chosen microphone and output, and the volume levels. Stored in your browser profile only. |
| Teams mute state | No | Read from the page and used inside the extension to switch your audio. It is never transmitted anywhere. |
Your settings stay local
Settings live in chrome.storage.local, which is your own browser profile. They are not synced to a Google account and are never sent to us. Removing the extension removes them.
The signaling server stores nothing
Rooms exist only in the memory of the running process. Nothing is written to a database, a log file or a disk. When everyone leaves a room, it disappears. Restarting the server erases everything it held.
What the extension reads on Teams pages
OffMic runs a content script on teams.microsoft.com, teams.live.com and teams.cloud.microsoft. On those pages it reads exactly one thing: whether the microphone button is muted or live.
It does not read your messages, your participant list, your meeting content, your calendar or any other part of the page. It adds nothing to the page, and it never presses the Teams microphone button for you. It only watches.
Permissions and why they exist
- Microphone. Captured only while you are connected to a room, and released the moment you disconnect. It feeds the private channel and nothing else.
- offscreen. Lets the extension hold the microphone and the peer connections in the background so a call survives closing the popup or switching tabs. It has no interface and is never displayed.
- storage. Remembers your settings between sessions so you do not retype them before every meeting.
- Access to the three Teams domains. Required to read the mute state, which is the switch the whole extension is built on.
What we never do
- We do not sell or transfer your data to third parties.
- We do not use your data for anything unrelated to the private voice channel.
- We do not use your data for creditworthiness or lending purposes.
- We run no analytics, no telemetry, no advertising and no cookies.
- We do not record, store or listen to any audio. The design makes it impossible for us to do so.
- We do not ask for an account, an email address or a payment method.
Third parties
To establish a direct connection between two browsers, OffMic uses a public STUN server provided by Google (stun.l.google.com). It receives a connection request that reveals your public IP address, which is how a STUN server works. No audio, no name and no team code is sent to it.
No other third party service is contacted. The extension loads no external code, no font, no script and no tracker.
Running your own server
The default signaling server is wss://offmic.xeron.be, run by the author of OffMic. You are not required to use it: the address is editable directly in the extension popup, and the server source is published so you can host it yourself. In that case nothing described here involves us at all.
Children
OffMic is a tool for professional meetings. It is not directed at children and collects nothing knowingly from them.
Changes
If this policy changes, the date at the top changes with it, and the previous versions remain visible in the project history on GitHub.
Contact
Questions about this policy, or about anything OffMic does with data, can be sent to contact@xeron.be, or raised publicly on the project tracker at github.com/Bysimeit/OffMic/issues.
The full source of both the extension and the signaling server is published there, so every claim on this page can be checked rather than taken on trust.
OffMic is an independent project. It is not affiliated with, endorsed by, or sponsored by Microsoft. Microsoft Teams is a trademark of Microsoft Corporation.