Free tool

Telegram username checker: taken, not occupied or invalid

Paste a name — with or without the @, or a t.me or tg://resolve link — and see Telegram's own answer for a channel, group, bot or person: taken, not occupied right now, or invalid. This page never calls a name available; it reports only what Telegram's own check just returned.

The name is for

Checks go through the Telegram API; this site does not save the names you check beyond a short cache. The rules, with sources

A Telegram username is the address behind t.me/name, and only one account can hold it at a time. This page does not guess whether a name is free — it sends the name to Telegram and shows exactly what Telegram’s own check returns, for a channel, a group, a bot or a person.

What the three answers mean

This page returns one of three things, each one taken directly from Telegram rather than guessed. Taken means someone already holds it — a channel, a group, a bot or a person, because t.me/username is one namespace shared by all four, so a single check can only ever name one owner. Not occupied is the phrase Telegram itself uses for a name nobody currently holds; it describes this exact moment, not a reservation, and the next section explains why this page never calls that free or available. Invalid is Telegram’s own verdict, and it only ever applies to a name that reaches the check at all: the character, length and reserved-word rules in the next section are what stop an invalid name before it is ever sent to Telegram, so the invalid answer here is Telegram rejecting a name that already passed those checks.

When the check itself cannot finish — a network hiccup rather than an answer from Telegram — this page says so plainly and offers a link to open the name on t.me directly instead of guessing. Whichever answer comes back, the handle itself is reusable: the link generator turns any name, taken or freshly registered, into the t.me and tg:// links Telegram documents.

The rules Telegram publishes

Telegram’s reference for checking a username states the rule in one line: the accepted characters are Latin A to z, case-insensitive, plus 0 to 9 and underscores, and the length has to fall between five and 32 characters. This page applies that rule before it ever contacts Telegram, so a name with a space, a hyphen or the wrong length is rejected instantly rather than sent off to be checked. A bot’s name carries one more rule, documented separately: it has to end in bot, as in the examples tetris_bot and TetrisBot, which is why this page asks whether the name is for a bot before it runs the check.

A handful of words can never be usernames at all, because t.me already spends them on its own pages. Telegram’s link reference lists the path segments it reserves for itself — among them addstickers, auction, boost, call, contact, invoice, joinchat, login, proxy, setlanguage and share, the single-letter paths a, c, k, m and z, and web and www. Typing one of these here is refused for the same reason a bad length is: Telegram would not treat it as a username link either.

Not occupied is not free

This page never calls a not-occupied name free or available, on purpose. Telegram’s FAQ describes collectible usernames: names that can be bought and sold through platforms like Fragment. Occupied describes only whether someone is actively using a name as their account, channel, group or bot right now, not whether the name is unclaimed property, so a name Telegram reports as not occupied can at the same time be listed on Fragment as a collectible — which is why this page links to Fragment for every not-occupied result. Matching is case-insensitive as well, so there is never a second result hiding under different capitalisation.

The other reason is timing. The answer above reflects the moment the check ran; Telegram does not hold or reserve a name for whoever just checked it, so it can be registered by someone else immediately afterward. What this page shows is what Telegram’s own server said just now, and nothing about tomorrow.

If the name you want is taken

Telegram’s own FAQ describes two paths back to a taken username, and neither one is a step this page performs for you. When the name is not registered as a collectible, and the same name is already the one you use on at least two of Facebook, Twitter and Instagram, Telegram says it can help move the username to your account or channel — contact @Username_bot to make that request. That path does not exist for a collectible username: those are bought and sold through platforms like Fragment instead, so check whether the name is available for sale there.

How the check is made

The Check button sends the name to AdminHub’s server, which asks Telegram and shows Telegram’s own answer as it is: taken (and whether by a channel, a group, a bot or a person), not occupied, or not valid. Names are not saved beyond a short technical cache. This tool works through the Telegram API, and the API’s terms of service require that users be told so. A name that comes back not occupied is only the first step; running a channel on it is the part Telegram leaves entirely to you.


Sources, checked September 2026: account.checkUsername for the accepted characters and the five-to-32 length; contacts.resolveUsername for who can use the method and its not-occupied and invalid error codes; Bot features for the bot username’s required suffix; t.me and tg:// link reference for the one shared username namespace and the reserved path segments; Telegram FAQ, Usernames and t.me for collectible usernames, case-insensitive matching and the route to request a taken name; Telegram API Terms of Service, section 2.2, for the disclosure requirement.

What people usually ask

What does not occupied mean, and why not free?
Not occupied is Telegram's own term: the API's error code for an open name is USERNAME_NOT_OCCUPIED, and this page repeats that wording rather than calling the name free. The two are different because the answer is a snapshot of this moment — someone else can register the same name a minute later — and because a not-occupied name can still be a collectible username, bought and sold through platforms like Fragment, even while nobody is using it as an account or channel name yet.
The name I want is taken. Can I get it?
Telegram's own FAQ describes two routes: contact @Username_bot to request the name. If the username is not registered as a collectible, and you already use the identical name on at least two of Facebook, Twitter and Instagram, Telegram says it can help move the username to your account or channel. When the name is a collectible instead, that route does not apply — collectible usernames are bought and sold through platforms like Fragment, so check whether the name is available for sale there.
Which characters and lengths are allowed?
Telegram documents the rule for checking a username as Latin letters A to z, case-insensitive, digits 0 to 9 and underscores, five to 32 characters long. Matching is case-insensitive too, so Example_Name and example_name are the same username to Telegram, even though the capitalisation you set is what gets stored and shown.
Why does a bot's name have an extra rule?
Because Telegram states it separately for bots: a bot's username has to end in bot, as in the examples tetris_bot and TetrisBot. That comes on top of the ordinary character and length rule, which is why this checker asks whether the name is for a bot before it checks — a name that is fine for a channel can still fail the bot rule.
Can a channel and a person have the same username?
No. Telegram's own link reference treats t.me/username as one namespace shared by public users, groups and channels, so a name held by a channel cannot also belong to a person. A check never returns more than one owner, never one answer per account type.
How is the check made?
The Check button sends the name to AdminHub's server, which asks Telegram and shows Telegram's own answer as it is: taken (and whether by a channel, a group, a bot or a person), not occupied, or not valid. Names are not saved beyond a short technical cache. This tool works through the Telegram API, and the API's terms of service require that users be told so.