Android

Every Mercurygram-specific option in the Android client: what it does, where it lives, and its default.

Options live under Settings → Mercurygram, unless a section says otherwise. They are off by default unless the Default column says otherwise, and apply to the current account only. The ones marked all accounts are device-wide, which the app also tells you in place. Options marked pre-release are not in the current stable build yet; they ship in the 5-dotted pre-release builds and land in the next stable.

Hidden accounts

The Hidden Accounts row appears at the top of the Mercurygram settings once an app passcode or stealth mode makes hiding possible. A hidden account is kept out of account switchers, settings and notifications until you type its own 4-digit unlock code, which must be unique and must not match the app passcode. At least one account has to stay visible.

The unlock code controls in-app access only. It is not encryption: chat data, media and credentials stay readable to anyone with full device access.

OptionWhat it doesDefault
Stealth modeHides hidden accounts without turning on the regular app passcode. Type a hidden account's code in the chat search field to open it for the session.Off
Only show settings when using a hidden accountKeeps the Hidden Accounts screen itself out of sight unless you are signed into a hidden account.Off
Change unlock code / Remove hidden accountLong-press an account in the list. Removing it makes the account visible again everywhere.n/a

General

OptionWhat it doesDefault
Show "Message Details"Adds a Message Details entry to the message long-press menu, including Export as JSON.Off
Hide keyboard on chat scrollDrops the keyboard as soon as the message list starts scrolling.Off
Hide "All Chats" tabRemoves the All folder tab. Long press the title bar to show it temporarily.Off
Default launch folderThe chat list opens on the folder you pick, on the first tab build after launch. Local to this device.All Chats
Hide storiesRemoves the stories bar from the chat list entirely.Off
Hide Premium promoHides the Telegram Premium, Business and gifting rows in Settings and the Premium banners in the chat list. Unlocks nothing and does not touch sponsored messages.Off
Use system font (all accounts)Uses the device system typefaces instead of the bundled Roboto.Off
Show character counter pre-releaseCounts the characters in the message you are typing, for groups where a bot enforces a length limit. Hidden while Telegram shows its own remaining-characters counter.Off
Delete for everyone by defaultPre-ticks "Delete for everyone" (and "Also delete for…" in private chats) in the delete dialog. You can still untick it.Off
Save deleted & edited messagesDeleted messages stay in the chat, grayed out and non-replyable; edited messages keep their earlier versions under Edit history in the message menu. Stored separately from the Telegram cache. Self-destructing messages and secret chats are never saved.Off
Clear saved message historyWipes everything the option above recorded. Shown only while it is on.n/a

Custom emoji pack

A sub-screen under General. Renders emoji from your own pack instead of the built-in Noto set; any emoji the pack is missing falls back to the built-in one. The pack stays on your device and is never shared.

OptionWhat it doesDefault
Use custom emoji pack (all accounts)Switches emoji rendering to the imported pack.Off
Import pack from fileTakes a .zip of emoji images, or an official Telegram APK to extract emoji from.n/a
Remove packDeletes the imported pack and goes back to the built-in set.n/a

Media

OptionWhat it doesDefault
Send larger photos (2560px)Raises the outgoing photo resolution cap.Off
Use rear camera for video messagesRound video messages start on the rear camera.Off
Disable Live Photos by defaultSends only the still frame of a Google Motion Photo. Tapping the motion icon in the attach panel still enables it for one selection.Off

Privacy

OptionWhat it doesDefault
Reduce network tracking (all accounts)Rotates the session key every hour instead of once a day, so a passive observer has a harder time correlating your device across IP changes. Background network activity rises slightly, and the first key after a fresh login is still observable once. If the server rejects the shorter lifetime, that account falls back to the standard 24h key and the screen says which.Off
Use Tor (all accounts)Routes Telegram protocol traffic (MTProto) through an embedded Tor daemon, defeating the passive auth_key_id correlation that links your account to your real IP. Media downloads and other HTTP traffic stay direct. Tor stops when the app is idle and restarts on demand. Calls may suffer, and Telegram still sees the Tor exit. Needs the companion Tor plugin, which the app offers to install.Off
↳ Anti-censorship (all accounts)Direct connection where Tor is not blocked, Snowflake where it is (domain-fronted, no setup), or obfs4 bridges with lines from @GetBridgesBot.Direct connection
↳ Stop Tor after idle (all accounts)Never, 1 minute, 5 minutes, 15 minutes or 1 hour.5 minutes
Disable global searchSearch stops looking up public usernames, channels and messages across Telegram, and only covers your own chats and contacts.Off
Disable AI text editorHides the AI button in the message and caption editors, which sends your draft to Telegram's AI service.Off
Disable AI summariesHides the AI Summary button, which sends the message text to Telegram's AI service.Off
Open links in browserLink taps open the page in your browser instead of Instant View, which is rendered by Telegram's servers. The explicit Instant View button still works.Off
Disable link previewsStops the app fetching web page previews while composing, in every chat, so Telegram's servers never load the links you type or paste.Off
Strip tracking parameters pre-releaseRemoves click-tracking parameters (utm_*, fbclid, gclid, si and similar) from links you open and links you paste into the message field. The rest of the address is untouched.Off
Keep drafts on this device pre-releaseUnsent drafts are never uploaded to Telegram, so they stop appearing on your other devices. Clearing a draft still syncs, so a draft stored before you turned this on can be removed from the server.Off
Confirm Telegram links pre-releaseAsks before opening t.me and tg:// links and shows the address first, against links that quietly join a channel or open a bot.Off
Start new chats as secretThe compose button creates an end-to-end encrypted secret chat instead of a regular one. Secret chats live only on this device. Existing chats and other ways of opening a chat are unaffected.Off

Translation

A sub-screen under Privacy. Applies to all accounts.

OptionWhat it doesDefault
Translation engineTelegram cloud sends the text to Telegram (which forwards to Google). Alternative HTTP routes it through a public Mozhi privacy proxy. Offline hands each translation to a separate FOSS app over a bound service, so the message never leaves the device; formatting may be lost, since the engine returns plain text. Default defers to Telegram's own setting.Default (Telegram cloud)
Install Offline Translator from F-DroidOpens the listing for dev.davidv.translator, the reference offline provider. Open it once afterwards to download your language pairs.n/a
Auto-fallback on failureIf the offline translator returns nothing (no model, language not detected, service unreachable), fall back to the Alternative HTTP path. The Telegram cloud is never used as a fallback once you picked the offline engine.On
Engine (Alternative HTTP)DuckDuckGo, LibreTranslate, Google (via Mozhi), MyMemory or Reverso.DuckDuckGo
Instance (Alternative HTTP)Rotate across the default Mozhi instances, pin one of them, or enter a custom https:// URL. The instance operator can log what it translates.Auto (rotate across defaults)

Voice transcription

A sub-screen under Privacy. Transcribes voice and round video messages on the device with whisper.cpp: the audio never leaves your phone and it works without Telegram Premium. The models are open source (MIT) and are downloaded or imported separately, not bundled.

OptionWhat it doesDefault
Transcribe on device (all accounts)Uses the local model instead of Telegram's premium-gated transcription request. Needs a model installed.Off
Model (all accounts)Tiny (smaller, faster), Base (larger, more accurate) or Small (most accurate, slower).Tiny
Download model / Import model from file / Delete modelFetch a model over the network, or import one you already have.n/a
LanguageAutomatic lets the model detect the spoken language; Device language or a specific language pins it, which helps because the smaller models often mis-detect short messages.Device language
Skip silence (voice detection) (all accounts)Detects speech and skips the silent parts, so the model cannot invent words during silence. Uses a small extra model downloaded alongside the main one.On

Updates

Hidden on F-Droid builds, which update through F-Droid itself. Applies to all accounts.

OptionWhat it doesDefault
Disable in-app updaterStops the startup check for new releases on GitHub. Manual checks still work.Off
Accept pre-release updatesReceives the 5-dotted development snapshots taken between stable releases (such as 12.6.4.4.42). They may crash or carry half-finished features; turning the option back off rolls you back to the matching 4-dotted stable. Forced on while a pre-release is installed.Off
Check for updates nowRuns the check immediately and shows when it last ran.n/a

Notifications

Push runs over UnifiedPush instead of Firebase, via the aesgcm-proxy gateway. Applies to all accounts.

OptionWhat it doesDefault
Disable UnifiedPushFalls back to polling for new messages. The app restarts to apply it.Off
UnifiedPush DistributorPicks the installed distributor app that receives pushes. Long press for recent notification and decryption statistics.Not set
Gateway URLThe URL prefix of the UnifiedPush gateway.https://p2p.belloworld.it/

The default ntfy.sh server has very low rate limits and blocks the gateway, so the app warns and switches away from it. A self-hosted ntfy server or another distributor works fine.

Elsewhere in the app

OptionWhereWhat it does
OpenStreetMap map previewsSettings → Privacy and Security → Map preview providerRenders map previews on the device with MapLibre and OpenStreetMap instead of Google. Always offered, whatever the server suggests.
Stickers / GIFs / Games / Inline BotsGroup permissions, and the per-member restriction editorSplits Telegram's single "Stickers & GIFs" permission into four independent toggles.
Disable Secure FlagsDebug menu (long press the version number)Allows screenshots and recents previews in screens that normally block them.
Remove Ads & Proxy SponsorDebug menuDrops sponsored messages and the proxy sponsor channel.

Always on

Some of the fork is not a toggle. These behaviours are always active.

Privacy and networking

Premium gates removed

Interface

Fixes carried ahead of upstream

The fork also carries upstream bug fixes: the Android 16 heads-up notification bug, a set of crash and memory-leak fixes, secret-chat delete-for-everyone propagation, IPv6 and multi-address proxy connectivity, and several performance fixes for large accounts.