A random Pokémon generator sounds like a toy and mostly gets used for real constraints.
The rule set does the work; the generator just decides who you are stuck with. Pull six, accept them, and the run is set. The useful part is the filters. A Nuzlocke through a specific region wants that region's Pokédex, not the whole National Dex, and most generators cannot do that.
Draft formats need a pool nobody chose. Set the count, set the generation, and the result is defensibly arbitrary in a way that a person picking never is.
The most common use is smaller: you have four of six slots and no idea what the last two should be. Rolling something you would never have picked is often enough to break the deadlock, and if the roll is bad you have lost two seconds.
Every roll is reproducible: the result is written into the address bar, so a draft can be shared and verified rather than taken on trust.
Any roll of six can be sent straight to the team builder, which will show you what the random six are collectively weak to. That is usually the interesting part, because a random team is a good way to see how badly type coverage can go wrong when nobody is choosing for synergy.
Every species in the National Dex, plus Mega Evolutions when you have not filtered them out. Cosmetic forms are folded into their base species so a roll does not hand you five Alcremie flavours.
Set the count to six. There is a button to send the result to the team builder, which will show you what that team is collectively weak to.
Yes. The generation filter uses National Dex ranges, so picking Johto gives you 152 to 251 and nothing else.
Excludes anything that still has an evolution. Useful for battle formats, since about half of an unfiltered roll would otherwise be a first-stage Pokémon.
Yes. The result is encoded in the address bar, so the link reproduces exactly the same Pokémon for anyone who opens it.