Three names on Discord, and which one this tool makes
Discord gives you three names. The username is unique across all of Discord and is how people find and add you. The display name sits on top of it in chats. A server nickname replaces the display name inside one server.
This generator makes usernames, because that is the name with rules. Every idea is lowercase, 2 to 32 characters, and uses only letters, numbers, periods and underscores, with no period at the start, the end or two in a row. If an idea would also make a good display name, add the capitals and spaces yourself when you paste it in.
Checking a name before you fall for it
Most platforms have a profile page you can open to see whether a name is taken. Discord doesn't, so this page can't link you to one, and no site can tell you for certain that a Discord name is free.
The check takes a few seconds in the app instead. Go to User Settings, then My Account, choose to edit your username and paste the idea in. If Discord says it is taken, try the next idea, or add a niche word in the form above ("ash.chess" rather than "ash").
Names that work in servers
People read your name in fast-moving channels and type it when they mention you, so short and pronounceable beats clever. If friends will call you by it in voice chat, say it out loud first.
Keep the gaming tag or name you use elsewhere if you have one, so people who know you from other places can find you. Avoid numbers that look like a birth year or random digits: they make an account look new or disposable.