▶ Random Everything - 100+ Free Generators // v2.8.1
root@generate-random:~/characters$ _

Random Character Generator

Generate random characters for fantasy RPGs, novels and sci-fi stories: name, race, class, looks, personality, motivation and D&D stats

[ Character Generator - Quick Summary ]

What: Generate complete random characters in three genres: Fantasy / RPG (race, class, alignment, background and 4d6 ability scores), Modern (occupation and life story) and Sci-Fi (species, ship role, origin). Every character gets a name, age, appearance, two personality traits, a motivation, a flaw and a quirk. Generate up to 10 at once.

When to use: D&D and tabletop NPCs, one-shot player characters, writing prompts, novel and short-story casts, game master prep, improv and drama exercises, game development placeholders.

Example: Sinella Fizzlebang - 121-year-old female Gnome Cleric (Chaotic Evil), Urchin. Wants to buy back her family's land; freezes in a crisis.

Free: No signup, no limits. Copy a single character or export the whole cast to TXT, CSV or JSON.

Our random character generator creates ready-to-use characters for games and stories in one click. Pick a genre - fantasy / RPG, modern or sci-fi - and get a full profile: name, age, race or species, class or occupation, background, appearance, personality traits, what the character wants, their flaw and a memorable quirk. Fantasy characters can come with D&D-style ability scores rolled the classic way (4d6, drop the lowest) with modifiers. Use it as a random NPC generator for your next session, a character idea generator for writing, or pair it with our random name generator and D&D dice roller. No signup required, completely free.

What is a Random Character Generator?

A random character generator builds a complete character for you instead of a single name: who they are, what they look like, how they behave and what drives them. Our generator combines independent random tables - race, class, background, build, hair, eyes, a distinguishing feature, two personality traits, a motivation, a flaw and a quirk - so you get a fresh combination every time, often with a surprising twist (a sarcastic Halfling Paladin who is terrified of birds) that is the best part of a good character.

Characters come in three genres. Fantasy / RPG uses the classic tabletop races (Human, Elf, Dwarf, Halfling, Gnome, Half-Orc, Tiefling, Dragonborn) and twelve classes, with nine alignments and optional ability scores. Modern gives realistic names, occupations and life stories for contemporary fiction. Sci-Fi adds species such as androids, cyborgs, clones and Belters, with starship roles and origins. Need a quick roll at the table? Use our dice roller.

Character Generator Options

Genre (Fantasy / RPG, Modern, Sci-Fi)

Fantasy / RPG: race, class, alignment and background in the style of D&D 5e, with race-appropriate ages (an Elf can be 400, a Half-Orc rarely passes 75). Modern: realistic first and last names, an occupation and a background such as "first in the family to go to college". Sci-Fi: species, a role aboard a ship or station, and an origin like "born on a generation ship". Androids and clones get a designation instead of a surname.

Gender (Any, Female, Male)

Choose the gender, or leave it on Any for a random mix. Gender drives the name endings in fantasy races and the first names in the modern genre.

Ability Scores (Fantasy only)

Rolls the six abilities - Strength, Dexterity, Constitution, Intelligence, Wisdom and Charisma - using the standard 4d6, drop the lowest die method, and shows the modifier for each score (10-11 = +0, 12-13 = +1, 8-9 = -1). Turn it off when you only need a story character.

Quantity (1-10 characters)

Generate one character or a whole cast of up to ten - a full adventuring party, a tavern full of NPCs or the crew of a ship.

Copy & Export

Copy a single character as text, or export all results to TXT (readable sheets), CSV (one character per row, with ability scores in their own columns) or JSON for your own tools.

How to Use the Character Generator

[STEP 1] Choose a Genre

Pick Fantasy / RPG, Modern or Sci-Fi.

[STEP 1] Set Gender and Stats

Leave gender on Any or choose one. For fantasy characters, keep ability scores on to roll 4d6 stats.

[STEP 1] Set Quantity

Choose how many characters to create, from 1 to 10.

[STEP 1] Generate

Click "Generate Character" to get complete profiles with name, looks, personality, motivation, flaw and quirk.

[STEP 1] Copy or Export

Copy a character into your notes or export the cast to TXT, CSV or JSON.

Common Uses for a Random Character Generator

  • _ D&D and Tabletop NPCs: Have a shopkeeper, villain or quest giver ready the moment players go off-script
  • _ Player Characters: Roll a random race, class and stats for a one-shot or a challenge campaign
  • _ Writing Prompts: Combine a motivation and a flaw into a story conflict when you are stuck
  • _ Novel and Screenplay Casts: Fill out side characters with distinct looks and personalities
  • _ Classroom and Drama Exercises: Give students a character to write about or improvise
  • _ Game Development: Placeholder NPC data in JSON while the real writing is in progress

Technical Details: How Characters Are Built

Each attribute is drawn independently from its own table with PHP's random_int(), so every entry in a table is equally likely. Ages are drawn from a range that fits the race or species. Ability scores follow the 4d6-drop-lowest rule: four six-sided dice are rolled and the three highest are added, which gives scores from 3 to 18 with an average of about 12.2. Modern names come from the same name data as our person generator.

// Character generation (fantasy)
$race = pick(RACES);                  // Human, Elf, Dwarf, Halfling, Gnome, Half-Orc, Tiefling, Dragonborn
$name = pick($race.first) . pick($race.endings[$gender]) . ' ' . pick($race.surnames);
$age  = random_int($race.min_age, $race.max_age);
$class = pick(CLASSES);               // 12 classes
$alignment = pick(ALIGNMENTS);        // 9 alignments

// Personality: 2 distinct traits + motivation + flaw + quirk
$traits = pick_distinct(TRAITS, 2);

// Ability scores: 4d6, drop the lowest
foreach (['STR','DEX','CON','INT','WIS','CHA'] as $ability) {
    $dice = [d6(), d6(), d6(), d6()];
    sort($dice);
    $score = $dice[1] + $dice[2] + $dice[3];      // 3..18
    $modifier = floor(($score - 10) / 2);         // 15 -> +2, 8 -> -1
}

API Access for Developers

GET https://generate-random.org/api/v1/generate/characters
VIEW FULL API DOCUMENTATION →

Frequently Asked Questions

Can I use these characters in my D&D campaign or novel? ▶
Yes. Everything the generator creates is yours to use in games, books, comics, videos or any other project, commercial or not. No attribution is needed.
How are the ability scores rolled? ▶
With the standard 4d6-drop-lowest method from the D&D Player's Handbook: four six-sided dice are rolled for each ability and the lowest die is dropped. Scores range from 3 to 18 and average about 12.2. The modifier is (score - 10) / 2, rounded down.
Which fantasy races and classes are included? ▶
Eight races - Human, Elf, Dwarf, Halfling, Gnome, Half-Orc, Tiefling and Dragonborn - and twelve classes: Barbarian, Bard, Cleric, Druid, Fighter, Monk, Paladin, Ranger, Rogue, Sorcerer, Warlock and Wizard. Each race has its own name style and a realistic age range.
Is this a random NPC generator too? ▶
Yes. Set the quantity to 5 or 10 to fill a tavern, a village or a ship's crew in one click. Turn ability scores off when you only need flavor; the motivation, flaw and quirk give each NPC something to play.
Can two generated characters be the same? ▶
It is extremely unlikely. A fantasy character combines over a dozen independent choices (race, name parts, class, alignment, background, build, hair, eyes, feature, two traits, motivation, flaw, quirk), giving billions of possible combinations.
Is the character generator free? ▶
Yes, completely free with no signup and no limits. There is also a free JSON API at /api/v1/generate/characters.