Telegram chat_id lookup
Public channel or group: paste the link. The lookup calls getChat for you, so no token of yours is needed.
- A public channel or group by @username or t.me link — looked up for you, no token needed.
- A numeric ID or a t.me/c/… message link — decoded in your browser, nothing is sent.
- A private group, a person or yourself — not possible by name. How to read those IDs.
What the -100 means
The Bot API keeps users, groups and channels apart by range. A channel's or supergroup's ID is its MTProto ID plus 10¹², made negative.
# the same call, with your own bot curl https://api.telegram.org/bot$TOKEN/getChat \ -d chat_id=-1001234567890
ID ranges
Positive = user or bot. Negative = chat; the range tells the kind.
1 … 1,099,511,627,775
−1 … −999,999,999,999
−1,000,000,000,001 … −1,997,852,516,352
−1,997,852,516,353 … −2,002,147,483,648
−2,002,147,483,649 … −4,000,000,000,000
Private groups and users
Nobody can look these up by name — Telegram only tells a bot the ID of a chat the bot is in, or of a person who wrote to it.
Any bot you created with @BotFather works. Send it a message — in the group, mention it or send a command.
Call api.telegram.org/bot<token>/getUpdates yourself. The token stays with you.
Paste the answer into the inspector and every ID in it is listed. It is read in your browser only.
Convert between formats
Type in any field; the others fill in. Works offline in your browser.
Channel / supergroup. −(10¹² + MTProto channel ID). This is the −100 prefix.
Every ID range
From Telegram's own “Bot API dialog IDs” page.
| Kind | From | To |
|---|---|---|
| User | 1 | 1099511627775 |
| Group | -999999999999 | -1 |
| Channel | -1997852516352 | -1000000000001 |
| Secret chat | -2002147483648 | -1997852516353 |
| Monoforum | -4000000000000 | -2002147483649 |
FAQ
How do I find a Telegram channel ID without a bot token?
Paste the channel's @username or t.me link into the lookup. The site asks Telegram's Bot API (getChat) for you and shows the chat_id. This works for any public channel or public group.
Why does my ID start with -100?
Channels and supergroups are written as −(10¹² + their MTProto ID) in the Bot API. The −100 is that 10¹², written in front of the channel's own number. A basic group has just a minus sign, a user or bot has a plain positive number.
Can I look up a person by @username?
No. The Bot API only resolves public channels and public groups by name. A person's ID is only told to a bot that person has written to, or it can be read from a message they sent to a group the bot is in. The page “Your own user ID” shows how.
How do I get the chat ID of a private group?
Add a bot you control to the group, send a message that the bot receives (a command or a mention), and call getUpdates. The group's ID is in message.chat.id. If you have a message link like t.me/c/1234567890/45, the ID is −100 followed by the first number.
Do you need my bot token?
No. The lookup never asks for one, and anything that looks like a token is refused by the server. The token and webhook checkers send your token from your browser directly to api.telegram.org; it never reaches this site.
Is the ID the same for every bot?
Yes. A chat ID or user ID is the same number for every bot and every account. Only file_id values (photos, stickers) differ from bot to bot.