How to build an anonymous feedback bot for Telegram
By the Botable team
An anonymous feedback bot lets people send a message to admins without their name attached. The bot receives it privately, strips the identity, and forwards the content. Describe your moderation rules and Botable builds it.
What is a anonymous feedback bot?
An anonymous feedback bot sits between a person and an audience and removes the attribution. Technically it is simple — receive a private message, forward the text to a destination chat, do not include the sender. The difficulty is that anonymity removes the thing that normally keeps people civil, so the useful version of this bot is mostly abuse control. Rate limiting stops one person flooding the channel. A moderation queue, where admins approve before anything is published, is the difference between a suggestion box and a liability. And there is an honesty requirement: the bot necessarily knows who sent what, because Telegram delivered the message to it, so calling it anonymous means anonymous to readers, not untraceable. Saying so plainly matters if the feedback is about the people running the group.
What commands does it have?
| Command | What it does |
|---|---|
/send | Starts an anonymous submission |
/status | Whether the last submission was published |
/queue | Admin view of pending submissions |
/approve <id> | Publishes a submission |
/block <id> | Blocks a repeat abuser by internal id |
What do you need before you start?
- A Telegram bot token from @BotFather
- A destination for submissions: an admin group, or a public channel if publishing
- A stated policy on what gets rejected, and who reads it
How do you build it?
Should submissions publish immediately or be approved first?
Approved first, in almost every case. Immediate publication means the first bad actor puts something on your channel with your name on it. A queue costs a few minutes a day and removes the entire class of problem.
How do you stop one person flooding it?
Rate-limit per sender — a small number of submissions per hour is plenty — and keep an internal id per sender so a repeat abuser can be blocked without ever being named publicly. Ask for both; anonymity without rate limiting is an open pipe.
How anonymous is it really?
Anonymous to readers. The bot receives the message from a Telegram account, so the operator can technically link them. Be explicit about this in the bot's own /start message — people share different things depending on the answer, and implying more privacy than exists is the one genuinely harmful failure mode here.
Can admins reply without breaking anonymity?
Yes. The bot can relay a reply back to the original sender using its internal id, so a conversation is possible while the identity stays hidden from the admin's view. Describe this if you want two-way feedback rather than a drop box.
A prompt you can use as-is
Paste this into Botable and adjust the details. It is specific on purpose — a vague description produces a vague bot.
Build an anonymous feedback bot. /send starts a submission and the next message is captured. Forward it to my admin group with an internal reference id but no sender name or handle. Nothing publishes automatically: /approve <id> posts it to the channel, /reject <id> discards it. Rate-limit each sender to 3 submissions per hour. /block <id> blocks a sender by internal id without revealing who they are. In /start, state plainly that submissions are anonymous to readers but that the operator can technically identify senders.
Who is this bot for?
- Communities running a suggestion box that people will actually use
- Teams collecting honest internal feedback
- Channels publishing reader submissions or confessions
What goes wrong with this kind of bot?
- Auto-publishing anonymous text is a liability; queue it
- Without rate limiting one person can bury the queue in an evening
- Do not claim untraceable anonymity — it is not true and the claim is the harmful part
Questions about anonymous feedback bots
Can it accept photos as well as text?
Yes, and the same rules apply more strongly — an image is published faster than it is read. Keep images in the approval queue and consider disallowing them entirely if the queue is not watched often.
Can it be used for whistleblowing?
Be careful. The operator can identify senders, so it is not appropriate where the consequence of identification is serious. Say so on the bot rather than letting people assume otherwise.