Fire Emblem Three Houses Growth Rates Calculator

Fire Emblem Three Houses Growth Rates Calculator body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: #333; max-width: 1200px; margin: 0 auto; padding: 20px; background-color: #f4f4f4; } .calculator-container { background: #fff; border: 1px solid #d1a963; /* FE3H Gold */ border-radius: 8px; padding: 30px; box-shadow: 0 4px 15px rgba(0,0,0,0.1); margin-bottom: 40px; } .calc-header { text-align: center; margin-bottom: 25px; border-bottom: 2px solid #3c2f2f; padding-bottom: 10px; } .calc-header h2 { color: #3c2f2f; margin: 0; } .input-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 20px; } @media (max-width: 768px) { .input-grid { grid-template-columns: 1fr; } } .form-group { margin-bottom: 15px; } label { display: block; font-weight: bold; margin-bottom: 5px; color: #555; } select { width: 100%; padding: 10px; border: 1px solid #ccc; border-radius: 4px; font-size: 16px; background-color: #fafafa; } button.calc-btn { display: block; width: 100%; background-color: #7b2cbf; /* FE3H Purpleish tone */ color: white; border: none; padding: 15px; font-size: 18px; font-weight: bold; border-radius: 4px; cursor: pointer; transition: background-color 0.3s; margin-top: 10px; } button.calc-btn:hover { background-color: #5a189a; } #result-area { margin-top: 30px; display: none; } .stats-table { width: 100%; border-collapse: collapse; margin-top: 10px; } .stats-table th, .stats-table td { padding: 10px; text-align: center; border-bottom: 1px solid #ddd; } .stats-table th { background-color: #3c2f2f; color: #d1a963; font-weight: 600; } .stats-table tr:nth-child(even) { background-color: #f9f9f9; } .stats-table td:last-child { font-weight: bold; color: #2c7a2c; } .total-display { background-color: #f0f0f0; padding: 15px; border-left: 5px solid #7b2cbf; margin-bottom: 20px; } .content-section { background: #fff; padding: 30px; border-radius: 8px; box-shadow: 0 2px 10px rgba(0,0,0,0.05); } .content-section h2, .content-section h3 { color: #2c3e50; } .stat-badge { display: inline-block; padding: 2px 6px; border-radius: 3px; font-size: 0.85em; background: #eee; color: #333; margin-right: 5px; }

FE3H Growth Rates Calculator

Select a unit and a class to see combined growth probabilities.

Edelgard Hubert Ferdinand Linhardt Caspar Bernadetta Dorothea Petra Dimitri Dedue Felix Ashe Sylvain Mercedes Annette Ingrid Claude Lorenz Raphael Ignatz Lysithea Marianne Hilda Leonie Byleth Seteth Flayn Hanneman Manuela Cyril Catherine Shamir Yuri Balthus Constance Hapi
Commoner/Noble Dancer Enlightened One Armored Lord Emperor High Lord Great Lord Wyvern Master Barbarossa Myrmidon Soldier Fighter Monk Mercenary Thief Armored Knight Cavalier Brigand Archer Brawler Mage Dark Mage Priest Pegasus Knight Hero Swordmaster Assassin Fortress Knight Paladin Wyvern Rider Warrior Sniper Grappler Warlock Dark Bishop Bishop Falcon Knight Wyvern Lord Mortal Savant Great Knight Bow Knight Dark Knight Holy Knight War Master Gremory Trickster War Monk/Cleric Dark Flier Valkyrie

Analysis

Below is the probability of each stat increasing by +1 upon leveling up.
Total Growth = Character Base + Class Modifier

Stat Character Base Class Modifier Total Growth %

Understanding Fire Emblem Three Houses Growth Rates

In Fire Emblem: Three Houses, character progression is determined by Random Number Generation (RNG) based on percentage probabilities known as "Growth Rates". Unlike some RPGs with fixed stat increases, Fire Emblem uses these percentages to roll for stat gains every time a unit levels up.

How the Formula Works

The math behind your character's potential is straightforward but vital for strategic planning. The formula for the probability of a stat increasing is:

Total Growth Rate = Character Base Growth + Class Growth Modifier

For example, if Lysithea (who has a 60% Magic growth base) becomes a Gremory (which adds a 10% Magic modifier), her total chance to gain Magic on a level up becomes 70%.

Interpreting the Numbers

  • Growth > 100%: While rare in Three Houses without boosters, a growth rate over 100% guarantees +1 to the stat, with the remaining percentage being the chance for a +2 increase.
  • Growth < 0%: Some classes enforce negative modifiers (e.g., Cavalier gives -10% Speed). This reduces the character's base chance. If the total drops to 0% or lower, the stat will never increase in that class.
  • Student Mode (RNG): The game generally uses a standard RNG system. The "2-stat minimum" rule ensures that if a student levels up and gains fewer than 2 stats, the game re-rolls until at least 2 stats increase (though this applies mostly to students, not Byleth).

Optimization Strategy: Min-Maxing

To build the strongest units (Min-Maxing), you should pair characters with high base growths in specific stats with classes that boost those same stats. Alternatively, you can use class modifiers to patch up a unit's weakness. For instance, putting a slow unit like Dedue into Grappler or War Master helps mitigate his low speed while capitalizing on his immense strength.

Key Stats Explained

  • HP: Health Points.
  • Str (Strength): Physical damage output and Attack Speed weight mitigation.
  • Mag (Magic): Magic damage and healing potency.
  • Dex (Dexterity): Hit rate and critical hit chance.
  • Spd (Speed): Avoidance and ability to double attack (AS > Enemy AS + 4).
  • Lck (Luck): Crit avoid, magic avoid, and hit rate accuracy.
  • Def (Defense): Physical damage reduction.
  • Res (Resistance): Magical damage reduction.
  • Cha (Charm): Gambit hit/avoid and Battalion endurance.
// Data Structures: [HP, Str, Mag, Dex, Spd, Lck, Def, Res, Cha] var characters = { // Black Eagles "edelgard": [40, 55, 45, 45, 40, 30, 35, 35, 60], "hubert": [35, 30, 55, 45, 45, 35, 25, 40, 35], "ferdinand": [50, 45, 20, 40, 50, 40, 35, 20, 40], "lindhardt": [30, 30, 45, 40, 40, 45, 30, 45, 15], "caspar": [55, 45, 25, 45, 45, 40, 30, 20, 25], "bernadetta": [35, 35, 20, 55, 50, 25, 20, 30, 35], "dorothea": [40, 20, 40, 45, 40, 35, 15, 35, 40], "petra": [45, 40, 25, 50, 60, 45, 30, 15, 35], // Blue Lions "dimitri": [55, 60, 20, 50, 50, 25, 40, 20, 55], "dedue": [60, 50, 15, 30, 20, 25, 50, 10, 30], "felix": [45, 55, 30, 45, 55, 40, 30, 20, 30], "ashe": [35, 35, 25, 55, 50, 40, 20, 35, 25], "sylvain": [55, 45, 30, 35, 50, 35, 40, 25, 40], "mercedes": [30, 25, 50, 45, 40, 30, 25, 45, 40], "annette": [25, 30, 50, 50, 35, 35, 20, 30, 35], "ingrid": [40, 35, 35, 40, 60, 45, 30, 40, 45], // Golden Deer "claude": [35, 40, 25, 60, 55, 45, 30, 25, 55], "lorenz": [55, 40, 40, 45, 40, 25, 30, 40, 35], "raphael": [65, 50, 15, 35, 15, 35, 45, 10, 25], "ignatz": [35, 35, 30, 50, 50, 55, 25, 35, 25], "lysithea": [20, 15, 60, 60, 50, 15, 10, 25, 15], "marianne": [35, 20, 50, 40, 40, 35, 15, 45, 40], "hilda": [50, 45, 25, 30, 50, 35, 35, 20, 50], "leonie": [40, 40, 20, 55, 60, 40, 40, 15, 40], // Church/Others "byleth": [45, 45, 35, 45, 45, 45, 35, 30, 45], "seteth": [50, 45, 35, 50, 50, 25, 30, 25, 45], "flayn": [25, 25, 55, 45, 35, 15, 25, 50, 45], "hanneman": [40, 30, 55, 45, 20, 35, 25, 40, 35], "manuela": [50, 35, 35, 40, 60, 30, 30, 25, 50], "cyril": [35, 20, 15, 40, 40, 30, 10, 10, 15], // Pre-aptitude. Tool assumes base. "catherine": [50, 50, 25, 40, 55, 30, 30, 20, 25], "shamir": [35, 40, 20, 55, 40, 55, 20, 15, 30], // DLC "yuri": [30, 35, 35, 40, 65, 45, 30, 35, 50], "balthus": [50, 50, 30, 25, 30, 20, 45, 30, 30], "constance": [20, 20, 60, 30, 35, 15, 15, 30, 25], "hapi": [35, 35, 45, 45, 40, 20, 15, 45, 25] }; var classes = { // Unique "commoner": [0, 0, 0, 0, 0, 0, 0, 0, 0], "dancer": [20, -5, 0, 0, 0, 0, -5, 0, 10], "enlightened": [20, 10, 10, 5, 5, 0, 5, 5, 5], "armoredlord": [20, 5, 10, 0, -10, 0, 5, 5, 10], "emperor": [30, 10, 10, 0, -10, 0, 10, 5, 10], "highlord": [20, 10, 0, 5, 0, 0, 5, 0, 10], "greatlord": [30, 10, 0, 10, 10, 0, 5, 0, 10], "wyvernmaster": [30, 10, 0, 5, 10, 0, 5, 0, 10], "barbarossa": [30, 15, 0, 10, 10, 0, 10, 0, 10], // Beginner "myrmidon": [10, 0, 0, 0, 5, 0, 0, -5, 5], "soldier": [10, 0, 0, 5, 0, 0, 0, -5, 5], "fighter": [10, 5, 0, 0, 0, 0, 0, -5, 5], "monk": [5, 0, 5, 0, 0, 0, -5, 5, 5], // Intermediate "mercenary": [20, 5, 0, 0, 5, 0, 0, -5, 5], "thief": [20, 0, 0, 10, 10, 0, 0, -5, 5], "armoredknight": [30, 0, -5, 0, -10, 0, 10, -5, 5], "cavalier": [25, 5, 0, 0, -10, 0, 5, 0, 5], "brigand": [30, 10, 0, 0, 0, 0, 0, -5, 0], "archer": [10, 0, 0, 10, 0, 5, 0, 0, 5], "brawler": [30, 0, -10, 10, 10, 0, 0, -10, 0], "mage": [5, -5, 10, 5, 0, 0, -5, 5, 0], "darkmage": [5, -5, 10, 5, 0, 0, -5, 5, 0], "priest": [5, -5, 5, 0, 0, 10, -5, 10, 0], "pegasusknight": [15, 0, 0, 0, 10, 0, 0, 5, 10], // Advanced "hero": [30, 10, 0, 0, 10, 0, 0, -5, 5], "swordmaster": [25, 10, 0, 0, 20, 0, 0, -5, 0], "assassin": [20, 0, 0, 20, 20, 0, 0, -5, 0], "fortressknight": [40, 10, -5, 0, -10, 0, 15, -5, 5], "paladin": [30, 10, -5, 0, -10, 5, 5, 5, 0], "wyvernrider": [30, 10, -5, 0, 0, 0, 5, -5, 0], "warrior": [40, 15, -5, 0, 0, 0, 0, -5, 0], "sniper": [20, 5, 0, 20, 0, 10, 0, 0, 0], "grappler": [40, 10, 0, 10, 10, 0, 0, 0, 0], "warlock": [10, 0, 10, 0, 0, 0, -5, 5, 5], "darkbishop": [10, 0, 10, 0, 0, 0, -5, 5, 0], "bishop": [10, 0, 10, 0, 0, 10, -5, 5, 10], // Master "falconknight": [30, 10, 0, 0, 20, 0, 0, 5, 10], "wyvernlord": [30, 15, -5, 0, 10, 0, 5, -5, 10], "mortalsavant": [20, 10, 10, 0, 0, 10, 0, -5, 5], "greatknight": [30, 10, -5, 0, -10, 0, 15, -5, 5], "bowknight": [10, 0, -5, 0, 0, 0, 0, -5, 5], "darkknight": [20, 5, 10, 0, -5, 0, 5, 10, 5], "holyknight": [20, 0, 10, 0, -5, 10, 5, 10, 5], "warmaster": [40, 15, 0, 0, 10, 0, 0, 0, 5], "gremory": [10, 0, 10, 10, 0, 0, -5, 5, 10], // DLC "trickster": [20, 0, 0, 15, 20, 10, 0, -5, 0], "warmonk": [20, 10, 0, 0, 10, 0, 0, 5, 0], "darkflier": [10, 0, 10, 0, 15, 0, -5, 10, 5], "valkyrie": [5, 0, 5, 0, 5, 10, -5, 5, 10] }; var statNames = ["HP", "Strength", "Magic", "Dexterity", "Speed", "Luck", "Defense", "Resistance", "Charm"]; function calculateGrowthRates() { var charKey = document.getElementById("characterSelect").value; var classKey = document.getElementById("classSelect").value; var charStats = characters[charKey]; var classMods = classes[classKey]; if (!charStats || !classMods) { alert("Error: Character or Class data not found."); return; } var tbody = document.getElementById("statsTableBody"); tbody.innerHTML = ""; // Clear previous results for (var i = 0; i < 9; i++) { var base = charStats[i]; var mod = classMods[i]; // Special logic for Cyril (Aptitude gives +20% to base in game, but usually listed separately) // For simplicity in this tool, we assume 'Base' is the raw code value. // If Cyril has aptitude equipped, all bases are effectively +20, but that's an ability. // We stick to pure base + class logic. var total = base + mod; if (total = 0 ? "+" + mod + "%" : mod + "%"; var modClass = mod > 0 ? "color:green" : (mod < 0 ? "color:red" : ""); var tr = document.createElement("tr"); tr.innerHTML = "" + statNames[i] + "" + "" + base + "%" + "" + modDisplay + "" + "" + total + "%"; tbody.appendChild(tr); } document.getElementById("result-area").style.display = "block"; }

Leave a Comment