
Most Stellaris ID lists online are flat dumps: hundreds of strings in a table, no logic, no workflow. You scroll, you copy, you paste, and half of them do not work on your patch or your mod set. The better approach is to understand the system that generates those IDs, because then you never need a list at all — you ask the game directly. The console already knows every ID it accepts. Your job is to know which family you are looking for and how to make the game show you the members.
This page teaches that system first, then gives you the reference tables for the families that actually matter in play: technologies, traditions, ascension perks, resources, events, and species traits. Every example here is a command you can type right now in a non-Ironman save.
The Two Kinds of IDs
Every ID in Stellaris is one of two things, and confusing them is the single most common reason a copied command fails.
Static IDs are defined in the game files. They are human-readable strings with a family prefix: tech_lasers_1, tr_supremacy_adopt, ap_galactic_force_projection. They do not change between saves. They do change between patches and DLC installs — a technology that exists in 4.3 may not exist in 3.12, and a mod can add hundreds of its own. But within a given install, they are fixed, and the game can list them for you via Tab-completion.
Dynamic IDs are integers assigned when a game starts. Your empire gets an index. Every AI empire gets one. Every species, leader, planet, fleet, and pop gets one. These numbers are save-specific: the Fallen Empire that is index 12 in one game might be index 7 in the next. There is no master list because the list is different every time you click New Game. The one constant: the player empire is always index 0. That anchor lets you switch away to any empire and always find your way back with play 0.
The practical split is clean. If the command takes a word with an underscore and a prefix, you are in static-ID territory — use Tab. If it takes a bare number, you are in dynamic-ID territory — use debugtooltip. Event IDs are a third, hybrid case: the namespace is static (crisis, utopia, action), but the number after the dot is a fixed event index in the game files, not a save-specific value. You look those up once and they stay put until a patch reshuffles the event files.
Finding Any ID in Game
Two tools cover every situation. Learn both and you will never need to guess an ID again.
Tab-completion (static IDs). Open the console, type a command name and the start of an ID prefix, then press Tab. The game prints every matching ID. Type research_technology tech_ship and hit Tab: you get every ship-related technology in your install, including any added by mods. Type activate_tradition tr_ and Tab: every tradition tree's adopt and finish entries appear. This is the fastest way to browse, and it is always accurate for your exact game version and mod set, because it reads the same files the game loads.
Debug tooltips (dynamic IDs). Type debugtooltip in the console and press Enter. Now hover over any object on the galaxy map — an empire's border, a planet, a fleet, a pop — and the tooltip expands with internal data, including the object's integer ID. Write the number down, feed it into your command, and toggle debugtooltip off when you are done. The empire tooltip shows its index; the pop tooltip shows the species index; the planet tooltip shows the planet ID. Everything you need is right there on screen.
A few habits make this smoother:
- Use command history. Up-arrow recalls your last command. Down-arrow steps forward. When you are running the same command with different IDs — say,
grow_popson several planets — this saves constant retyping. - The
helpcommand lists everything. Typehelpand the console dumps every command it knows. Pipe it through a text file if you want a searchable reference for your exact install. - The built-in menu (4.x). Recent patches added a clickable console menu that exposes common toggles — instant build, max resources, survey, communications — without typing. It is a convenience layer; the typed commands underneath are unchanged.
Static ID Families and Their Prefixes
Every static ID wears its family on its sleeve. The prefix before the first underscore tells you what the object is, which command accepts it, and roughly where it lives in the game files. Here are the families you will actually use.
| Prefix | Family | Command that takes it | Example ID | Tab prompt |
|---|---|---|---|---|
tech_ | Technologies | research_technology | tech_titans, tech_battleships, tech_zero_point_power | research_technology tech_ + Tab |
tr_ | Traditions | activate_tradition | tr_harmony_adopt, tr_supremacy_finish | activate_tradition tr_ + Tab |
ap_ | Ascension perks | activate_ascension_perk | ap_one_vision, ap_galactic_force_projection | activate_ascension_perk ap_ + Tab |
resource_ | Common and rare resources | Resource-give commands | resource_consumer_goods, resource_volatile_motes, resource_exotic_gases, resource_rare_crystals, resource_nanites | Varies by command |
sr_ | Strategic resources | Resource-give commands | sr_dark_matter, sr_zro, sr_living_metal | Varies by command |
A few rules that apply across all families:
- Resource-give commands default to 5,000. Type
cash,alloys,minerals,food,unity, orinfluencewith no argument and you get 5,000 of that resource. Append a number to set a specific value.max_resourcestops up everything at once. - Research points work the same way.
society,physics, andengineeringeach default to 5,000 stored research points. research_all_technologiesgives you the whole tree minus repeatables. Append1— as inresearch_all_technologies 1— to also unlock event-locked technologies: L-Gate insights, crystalline plating, dragon scale armor, and the rest. Without the1, those stay locked.activate_all_traditionsunlocks every tree. Useful for sandbox testing; in a real run, tradition order matters, and the best traditions guide covers which trees to prioritize.
Dynamic IDs: Empires, Species, Leaders, Planets
Dynamic IDs are the ones that trip people up, because no website can list them for you. They exist only inside your save. The workflow is always the same: enable debugtooltip, hover, read the number, use it.
Empire IDs. Every empire in the galaxy has an integer index. Yours is 0 — always, in every game, no exceptions. AI empires get whatever numbers the generator assigns. To find one, hover its borders or its name on the galaxy map with debug tooltips on; the tooltip reads something like "index: 2." Then:
play 2— you are now playing as that empire. Your old empire keeps running under AI.play 0— you are back home.force_integrate 2— that empire is absorbed into yours. It gets a lot bigger, very fast.add_intel 2 70— adds 70 intel on empire 2, additive to whatever you already have.
Species IDs. Hover a pop and the tooltip shows its species index. Species modification commands take this number:
add_trait_species 80 trait_intelligent— adds the Intelligent trait to species 80.remove_trait_species 80 trait_slow_breeders— removes a trait the same way.
The trait argument is itself a static ID (see the trait section below), so you are combining a dynamic number with a static string in one command. This pattern shows up everywhere: add_trait <leader_id> <trait_string> works the same way for leaders.
Planet and fleet IDs. Hover a planet or fleet with debug tooltips on and note the integer. own on a planet colonizes it (or steals it — but if you take another empire's planet, you must also own the starbase in that system, or control reverts to the original owner). damage 800 with a fleet selected deals 800 points of hull damage directly, bypassing shields and armor entirely. That last one is a debugging tool, not a combat simulator — it only touches hull.
One warning about grow_pops. Since the 4.0 population rework, grow_pops <n> does not add exactly n pops. The number scales with the pop-size system, so grow_pops 1000 produces far more than a thousand pops. Treat the argument as a multiplier, not a count, and test with small values first.
Event IDs and Namespaces
Events use a namespace.number format. The namespace is a static string defined in the game's event files; the number is the index of a specific event within that file. event crisis.1000 fires event 1000 in the crisis namespace. These are not save-specific — they are the same in every game on the same patch — but they do shift when Paradox reorganizes event files between major updates.
The crisis events are the ones players reach for most, because they let you trigger endgame content on demand:
| Crisis | Command | Behavior |
|---|---|---|
| Prethoryn Scourge | event crisis.10 | Starts the Prethoryn event chain; they arrive naturally in a couple of in-game years. |
| Prethoryn (instant) | event crisis.12 then event crisis.14 | Skips the wind-up; the Scourge arrives almost immediately. |
| Unbidden | event crisis.1000 | Spawns the Unbidden immediately. Single command, no chain needed. |
| Contingency (chain) | event crisis.2005 | Initiates the Contingency "go signal" chain for a natural-feeling spawn. Recommended. |
| Contingency (instant) | event crisis.2000 | Spawns the Contingency immediately. Do NOT combine with crisis.2005 — firing both creates two separate Contingencies. |
Beyond crises, the event command accepts any namespace in the game files. The effect command is its more flexible sibling: instead of firing a scripted event, it runs a raw effect string directly, which is how modders and testers trigger specific outcomes without waiting for event prerequisites. For most players, event covers what they need; effect is the power tool you reach for when no pre-built event does exactly what you want.
The console commands guide has the full command reference; this section is specifically about the ID format so you can read event-based commands without guessing.
Species Trait IDs
Trait IDs follow the trait_ prefix convention. You feed them to add_trait_species <species_id> <trait_id> or remove_trait_species, combining a dynamic species number with a static trait string. Tab-completion after trait_ lists everything available in your install.
What follows is not an exhaustive dump — Tab does that better than any webpage. Instead, these are the traits worth knowing by name, grouped by what they do, so you can reach for the right one without scrolling through two hundred entries. Costs are in trait points; negative traits refund points to fund expensive positives.
| Category | Traits (ID stem after trait_) | What they do |
|---|---|---|
| Research output | intelligent (2 pts, +10% research from jobs), erudite (+20% research from research jobs, leader bonuses), natural_sociologists / natural_engineers / natural_physicists (1 pt each, +15% branch research) | The highest-value traits in most empires. Research output boosts are scarce after recent patches removed many stacking sources, making these far more valuable than they used to be. |
| Pop growth and assembly | rapid_breeders (+10% growth), incubators (+30% growth under 7 pops, sliding to -10% at 47+), budding / crystallization (+0.02 assembly per pop on 23+ pop planets), fertile (4 pts, +30% growth, -10% housing) | More pops means more jobs means a bigger economy. Incubators front-load new colonies; Budding and Crystallization outscale Rapid Breeders in the long game. Polyic (from killing the Tiyanki Matriarch) is a strictly better Budding at +0.05 per pop. |
| Economy and output | thrifty (+25% trade value, applied before planet modifiers — the best trade-empire trait), natural_machinists (2 pts, +10% alloys and consumer goods), industrious / agrarian / ingenious (+15% basic resource from jobs) | Thrifty is the single first pick for a trade build. The basic-resource traits dilute late as techs and traditions grant larger bonuses; Industrious is weakest because miners have the lowest base output. |
| Habitability | adaptive (+10%), extremely_adaptive (4 pts, +20%), robust (4 pts, +30% habitability plus +5% all job output) | Habitability bonuses fall off: your capital starts at 100%, and terraforming plus traditions push other worlds there too. Being below 100% is what hurts — slower growth, lower output, higher upkeep. Take these for rough early colonies, not as a permanent plan. |
| Leader lifespan | enduring (1 pt, +20 years), venerable (4 pts, +80 years), survivor (free, +10 years plus tomb-world habitability) | You only need enough lifespan to reach ascension, after which leaders can be kept alive indefinitely. Enduring is the efficient pick; Venerable at four points is wasteful. Survivor is free — take it even without tomb worlds. |
| Empire size | docile (2 pts, -10% empire size from pops) | Computed at planet level before empire-wide reductions, then multiplied with them — so Docile plus Beacon of Liberty gives roughly 23.5% total, not 25%. Scales extremely well into the mid and late game when you have hundreds of pops. |
| Origin and special | necrophage (free with origin, +80 yr lifespan, -50% upkeep, +5% ruler/specialist output), void_dweller (+15% output on habitats, locked to space), zombie (Permanent Employment, -100% upkeep, -25% job resources) | Origin traits are free in points but often carry hidden costs. Necrophage plus Lithoid wraps to -100% natural growth, letting you keep growth on a slave species while your main species never accidentally breeds. Zombie pops cost no upkeep and still produce trade and amenities at full value. |
| Useful negatives (point refunds) | unruly (refund 2, +10% empire size — free at game start when your empire is tiny), solitary (refund 1, +10% housing usage — nearly ignorable), sedentary (refund 1, +25% resettlement cost) | The art of negative traits is picking ones that barely hurt. Unruly is the best negative in the game: at start your empire size is under 100, so +10% is meaningless, and you can modify it out later. It funds picks like Intelligent or Incubators for free. |
Two modification patterns that come up constantly in testing:
- Add a trait to a species:
add_trait_species <species_id> trait_intelligent. The species ID comes fromdebugtooltip; the trait string you can Tab-complete. - Add a trait to a leader:
add_trait <leader_id> <trait_string>. Leader IDs are also dynamic — hover the leader portrait with debug tooltips on.
Commands That Consume IDs
A quick reference for the commands that take an ID argument, what kind of ID they expect, and the gotcha that goes with each. If a command is not here, it either takes no argument or takes a plain number that is not an object ID.
| Command | ID type | What it does | Gotcha |
|---|---|---|---|
play <empire_id> | Dynamic (empire) | Switches your control to that empire. | Your empire is always 0. The AI runs your old empire while you are away. |
force_integrate <empire_id> | Dynamic (empire) | Absorbs the target empire into yours. | Instant and total. No diplomacy, no opinion check. |
add_intel <empire_id> <amount> | Dynamic (empire) + integer | Adds intel on the target empire. | Additive: add_intel 2 70 with 10 existing intel gives 80. |
research_technology <tech_id> | Static (tech_) | Grants a specific technology. | Type the full ID including the prefix. Tab-completion lists options. |
activate_tradition <tr_id> | Static (tr_) | Adopts a single tradition. | Adopt and finish entries are separate IDs: tr_harmony_adopt vs tr_harmony_finish. |
activate_ascension_perk <ap_id> | Static (ap_) | Grants an ascension perk. | Tab lists every ascension perk in your install, so you never need to guess the string. |
add_trait_species <species_id> <trait> | Dynamic (species) + static (trait) | Adds a trait to every pop of that species. | Respects trait-point limits only if the game enforces them in the current patch; test and check. |
add_trait <leader_id> <trait> | Dynamic (leader) + static (trait) | Adds a trait to a specific leader. | Leader IDs are per-save; hover the portrait with debug tooltips. |
event <namespace.number> | Event namespace | Fires a scripted event. | Some events have prerequisites; firing them out of order can produce broken chains. Crisis events are the safe, well-tested ones. |
damage <amount> | Integer (not an object ID) | Deals hull damage to the selected fleet. | Bypasses shields and armor. Hull only. Not a combat simulator. |
grow_pops <n> | Integer (multiplier, not count) | Adds pops to the selected planet. | Post-4.0, the number scales with pop size. grow_pops 1000 gives far more than 1,000 pops. |
create_navy <n> | Integer (naval capacity fraction) | Spawns a fleet scaled to your naval capacity. | Exact math is version-dependent. 1 is roughly 100% of naval capacity. |
Safe Testing Workflow
Console commands are a debug kit, not a cheat menu — or rather, they are both, and the difference is whether you save first. A clean testing session looks like this:
- Use a non-Ironman save. The console is disabled in Ironman mode. There is no workaround; that is the gate. If your commands are not working at all, the console not working guide covers the common causes.
- Save before you type anything. Manual save, named something you will recognize. Console commands do not have an undo.
force_integrateon the wrong empire ID is not something you want to discover after an hour of play. - Toggle the AI off for sandbox work. Type
aito disable AI processing. This matters more than it sounds:instant_buildapplies galaxy-wide, not just to you. With the AI active, every empire in the galaxy starts building instantly, which produces unpredictable behavior and slows the game to a crawl. With the AI off, only your empire builds, and the game runs faster with fewer active calculations. - Use
instant_buildwith the period key.instant_buildmakes all construction complete in one day and raises resource capacity to a very large number. Pair it with the period key (.), which advances the game by exactly one day, to finish queued ships and buildings on demand without waiting. - Run
max_resourcesorrrafterinstant_build. Sinceinstant_buildraises the resource cap,rr(max resources) fills to that cap, meaning you re-run it far less often. - Test in small increments. One command, observe the result, then the next. Firing
research_all_technologiesproduces a wall of pop-up notifications. Firing both Contingency crisis commands produces two Contingencies. Small steps keep the session readable. - Toggle everything back off.
aiagain to re-enable the AI.instant_buildagain to turn it off.debugtooltipagain to hide the debug overlay. Toggles are stateful; leaving them on silently changes everything that happens next.
A concrete example — testing a fleet composition in under two minutes:
research_all_technologies 1— unlock everything, including event-locked ship components.instant_buildthenrr— infinite resources, instant construction.ai— AI off so the galaxy does not also start building.- Queue the ships you want to test. Press
.to advance one day and finish them. attack_all_fleets— every fleet in the galaxy, including your own, becomes hostile to every other. You do not need a second empire to run a battle test.- Save. Run the battle. Reload if you want to try a different composition.
That loop — unlock, build, fight, reload — is how you answer questions like "do 20 battleships beat 100 corvettes?" without spending three hours setting up a normal game. The ship design guide covers what compositions are actually worth testing.
FAQ
Why do the IDs I copied from a website not work?
Two reasons. First, the ID might be dynamic — empire, species, leader, and planet IDs are save-specific integers that no website can list for you. Use debugtooltip to read them from your own game. Second, the ID might be from a different patch or DLC set. Static IDs change between versions; a technology that existed in 3.8 may be renamed or removed in 4.3. Tab-completion in the console always reflects your exact install.
Can I use console commands in Ironman?
No. The console is disabled in Ironman mode, full stop. There is no launch-option trick or config edit that re-enables it. If you need achievements, play without the console. If you need the console, play a non-Ironman save.
What is the difference between event and effect?
event fires a pre-scripted event by its namespace and number — the game runs whatever that event file says, including prerequisites and chains. effect is the more flexible sibling the modding and testing crowd reaches for. event is safer and more predictable; effect is more flexible but easier to misuse. Most players only need event.
How do I find my own empire ID?
You do not need to. The player empire is always index 0, in every game, on every patch. play 0 always brings you home. Every other empire's ID you read off the debug tooltip.
Do trait IDs change between patches?
The trait_ prefix convention is stable. Individual trait strings occasionally get renamed or reorganized — especially during species-class reworks — but the Tab-completion list in your console is always correct for your version. If a trait string from an old guide does not work, type trait_ and Tab to find its current name.
What does research_all_technologies 1 do differently from research_all_technologies?
Without the 1, you get every standard technology in the tree except repeatables. With the 1, you also get event-locked technologies — things like L-Gate insights, crystalline plating, and dragon scale armor that normally require specific event chains to unlock.
I fired two crisis commands and now I have two crises. Is that a bug?
No. Firing event crisis.2000 and event crisis.2005 in the same game spawns two separate Contingencies, because they are two different spawn paths for the same crisis. Pick one. The same logic applies to any event that has multiple entry points — each command fires its own instance.
Next Reads
- Stellaris Console Commands and Cheats — the full command reference this ID list feeds into.
- Stellaris Debugtooltip and IDs Guide — a deeper dive into the debug-tooltip workflow for finding dynamic IDs.
- Stellaris Console Commands Not Working — troubleshooting when the console will not open or commands do nothing.
- Stellaris Best Traditions — which tradition trees to unlock first when you are not using
activate_all_traditions. - Stellaris Best Ascension Perks — perk rankings and synergies for when you grant them the normal way.
- Stellaris Best Civics — civic picks that pair with the trait strategies above.
- Stellaris Ship Design Guide — what to build once
instant_buildandresearch_all_technologieshave removed the grind. - Stellaris Beginner Guide — the full first-game walkthrough if you are new and the console feels like too much, too fast.
- Stellaris Returning Player Guide — what changed since you last played, including the pop rework that affects
grow_popsscaling.