Username rules by platform

Every platform enforces its own idea of what a name may be, and the differences are larger than most people expect. A handle that is comfortable on Steam is over the limit on Xbox. A name built with a hyphen is fine on YouTube and impossible on Discord. This page collects the rules that actually get names rejected, and explains what each one costs you.

Length is the constraint that bites first

Maximum lengths across the platforms on this site range from 15 characters to 32. That is a wide spread, and it means a name chosen without a ceiling in mind will fit some services and not others. The tightest ceiling is 15, shared by the Xbox gamertag and the X username. Twitch allows 25, Instagram and the YouTube handle allow 30, and Discord, Steam and Telegram all stop at 32.

Minimums matter less often but catch people out at the short end. Telegram will not accept a username under 5 characters. Twitch requires at least 4. Discord starts at 2, while YouTube, PSN, Minecraft and Roblox all want at least 3. Telegram's 5 is the highest minimum any of these rows confirms, so five characters clears every floor that has been checked — the rows without a stated minimum may still have one that was not.

Character sets, and what they quietly remove

The permitted character set is where a name loses its shape. Most platforms accept letters, digits and the underscore. Beyond that they diverge:

  • Discord lowercases everything and allows the underscore and the period. Capitals do not survive.
  • Twitch allows letters, digits and underscores, and will not let the name start with an underscore.
  • Instagram allows periods as well as underscores, which makes it one of the friendlier services for separating words.
  • X (Twitter) allows letters, digits and underscores only, in the shortest field of the set.
  • YouTube handles accept hyphens and periods alongside underscores — the widest separator choice of the group.
  • PSN allows hyphens and underscores but insists the online ID begins with a letter.
  • Minecraft on Java allows only letters, digits and underscores.
  • Roblox allows at most one underscore in the whole name.
  • Telegram allows letters, digits and underscores, and requires the name to end with a letter or a digit.
  • Steam is the outlier: the profile name other players see accepts almost any character, because it is a display name rather than a login handle.

The identifier is not always the name people see

Several platforms keep two names for you, and the rules above apply only to the strict one. Discord separates a lowercase username from a free-form display name. Twitch does the same. Instagram pairs a username with a display name. Roblox has a username and a display name. Steam has a profile name and, separately, a custom URL.

This distinction is worth internalising because it changes what you should optimise for. The handle should be short, plain and available. The display name is where capitals, spaces and personality belong. Choosing one name and forcing it through both roles is how people end up with a display name that reads like a database key.

Xbox does something none of the others do

When a gamertag is already taken, Xbox does not simply refuse it. It appends a numeric suffix, which also cuts the part you chose from 15 characters to 12; the resulting tag renders to 16. The name you end up with is therefore not always the name you typed, and the suffix becomes part of the tag you were issued. If a clean tag matters to you, checking availability before you commit matters more here than anywhere else.

What to do with all this

Decide the strictest platform you genuinely need the name on, and design for it. In practice that usually means Xbox if you are on console, and Twitch or Telegram otherwise. Then check the character set of that platform and avoid separators it will not take.

The alternative — pick a name, then discover the constraint — is the route that produces handles with digits stapled on the end. If you want a shortlist that already fits, the collections on this site can be filtered by length before you ever see a name, and the guide on using one username everywhere works out what the intersection of all these rules leaves you.

Every number on this page comes from the same table the homepage shows, and that table carries the month it was last checked. Rules do change, so treat this as a strong starting point and let the sign-up form have the final word.

Why the rules differ at all

The variation looks arbitrary until you notice what each platform was originally displaying names on. Console tags are short because they were designed for a television read from across a room, in interfaces built before anyone expected a name to be a brand. Chat platforms allow more because a name sits inline with text on a monitor at arm’s length. Social platforms allow the most because the name is a web address first and a label second.

The character sets have a similar logic. A platform that puts the handle in a URL has to exclude anything that would need escaping. A platform that resolves names case-insensitively has to choose a canonical form, which is why Discord lowercases. A platform that lets you claim a name permanently has to be more careful about confusables than one where names are display-only.

Knowing the reason is practical rather than academic: it tells you which rules are likely to loosen and which are not. Length limits move occasionally as interfaces are redesigned. The rule that a login-style identifier takes no space holds across every row of this table.

Checking before you commit

Whatever this page says, the sign-up form is the authority. It is the component that enforces the rule, it is updated when the rule changes, and it distinguishes between a name that is invalid and one that is merely taken. Use the table here to design a name that has a chance, and the form to confirm it.

More guides

Discord username rules A Discord username runs 2 to 32 characters: lowercase letters, digits, underscores and periods. How it differs from the display name and server nickname. Twitch username rules A Twitch username runs 4 to 25 characters: letters, digits and underscores, never starting with one. How the display name differs, and why it is your URL. Steam name rules A Steam profile name stops at 32 characters and accepts almost anything. How it differs from the custom URL and friend code, and which one to choose carefully. Instagram username rules An Instagram username stops at 30 characters: letters, digits, periods and underscores. How the handle differs from the display name people search, and changes. YouTube handle rules A YouTube handle runs 3 to 30 characters: letters, digits, underscores, hyphens and periods. How it differs from the channel name, and how to choose both. Xbox gamertag rules An Xbox gamertag runs to 15 characters while the name is free; a taken name caps your part at 12 and adds a numeric suffix. What it accepts, and how to choose. PlayStation Network online ID rules A PlayStation Network online ID runs 3 to 16 characters: letters, digits, hyphens and underscores, starting with a letter. What changing it can do to old games. Minecraft username rules A Minecraft Java username runs 3 to 16 characters: letters, digits and underscores only. Bedrock uses your Xbox gamertag instead. What each accepts, and renaming. Roblox username rules A Roblox username runs 3 to 20 characters: letters, digits and at most one underscore. How it differs from the display name, and how to choose both well.

Ready to pick a name?

Use the generator to get names that already fit these rules

Go to Generator