In Battle for Azeroth, how does diminishing returns affect Armor, Block Amount, Stagger, Dodge, Parry, and Block Chance?

Some things haven’t changed and you’ll be familiar with them. Other things are a little different with Battle for Azeroth. We’ve figured out everything you need to know through data mining and a dizzying amount of in-game testing.

We’ll cover all of the formulas in this post (along with a Rage generation nugget at the end).

Let’s start by looking at the often misunderstood concept of diminishing returns.

Diminishing Returns (DR)

Several tank mechanics in BfA use DR formulas: damage reduction from Armor, Blocking and Stagger, and chance to Block, Dodge and Parry. This is one of those topics that tends to cause arguments between people who all have a perfect understanding of the topic, but a different perspective. If you want more details on this topic, check our our diminishing returns blog post.

For the purposes of this article, we’ll just give you the punchline: even though the in-game character sheet shows that you get less and less percent damage reduction per point of Armor as you get more and more Armor, its true, practical value is linear — don’t let that number throw you off. It doesn’t matter if you are a fresh 120 or a geared-up raider, adding another point of Armor will make you live just as much longer in either case.

This is true for Block Amount, Stagger, Block Chance, Dodge Chance, and Parry Chance as well.


Below we’ll show the formulas for all of the tank stats that have DR. They are pretty simple, but the constants are hard to find. Formulas are highlighted in yellow boxes like the one below for easy reference.

All formulas and constants are based on Beta Build 27026. We will continue to check the values with each update and will post here if it changes, along with the beta (or live) build number.


Armor reduces the damage that you take from enemy physical attacks. It also reduces the physical damage that you deal to enemies — bosses have armor too! We’ll look at how both work.

If you are attacking a boss:

Final Damage = Raw Damage * (1 – Boss Armor / (Boss Armor + K))

Boss Armor is a bit hard to find, but can be extracted from the raw game data.

  • For a level 123 raid boss, it is 2700
  • For a level 113 raid boss, it is 903

K is a constant, commonly called the “K value”.

  • For a level 120 player, it is 6300
  • For a level 110 player, it is 1423

These numbers are also a pain to find — they can be extracted from the game client.

For easy reference then:

  • Final Damage = Raw Damage * 0.7 for a 120 player fighting a 123 raid boss
  • Final Damage = Raw Damage * 0.6118 for a 110 player fighting a 113 raid boss

If a boss is attacking you:

Final Damage = Raw Damage * (1 – Your Armor / (Your Armor + K))

Same exact approach, same constant, just use your own armor instead of the boss’s armor.

For quick reference, here are some useful “K values” for an NPC attacking a player:

  • K for a level 120-123 NPC hitting you is 6300
  • K for a level 113 NPC hitting you is 2107
  • K for a level 110 NPC hitting you is 1423

Note that at max level there is a multiplier on this constant when an NPC is attacking you that is based on the content you are doing. Blizzard has stated that it will increase with each raid tier. The purpose of this change is to keep tanks from getting too tough as gear progresses. Here are the values for season 2 Mythic Dungeons and raids (Battle of Dazar’alor), data mined from the game’s data files and confirmed in-game:

  • 8467 Mythic/Mythic+ Dungeon Season 2, Dazar’alor LFR
  • 9356 Dazar’alor Normal
  • 10345 Dazar’alor Heroic
  • 11479 Dazar’alor Mythic

For legacy reference, here were the values for Season 1 Mythic Dungeons and Uldir:

  • 7100  Mythic/Mythic+ Dungeon Season 1, Uldir LFR
  • 7736  Uldir Normal
  • 8467  Uldir Heroic
  • 9311  Uldir Mythic

We will update this post whenever new values are found. Note that we haven’t explicitly tested yet whether higher Mythic+ have different armor constants, or if Blizzard figured that the ramping damage was sufficient.

Note! Armor can never reduce damage by more than 85%.

Block Amount

Block reduction used to be a flat 30%, but now it scales with the Block stat seen on your shield. The block stat on your shield as of right now is always 2.5 times the armor on your shield.

Block Reduction = Block Amount / (Block Amount + K)

For example, a shield with 4618 block against a level 123 raid boss would look like this:

  • Block Reduction = 4618 / (4618 + 6300) = 42.3%

Paladin’s Redoubt will multiply the block amount by 1.75, then have DR applied. In the previous example with Redoubt up:

  • Block Reduction = (4618 * 1.75) / (4618 * 1.75 + 6300) = 56.2%

Warrior’s Critical Block doubles the post-DR amount. A critical block with that 4618 block shield looks like this

  • Block Reduction: 42.3% * 2 = 84.6%

Note! Block can never reduce damage by more than 85%, including critical blocks.

When you block an attack, block simply acts as another damage reduction that happens before absorbs (like Power Word: Shield), and multiplies together with any other reductions like armor.

For example, say a raw hit comes in for 100,000 damage. You have 30% damage reduction from armor, and 40% reduction from blocking. The final damage of a blocked hit would be:

Final Damage = 100,000 * (1 – 0.3) * (1 – 0.4) = 42,000

Note that Block Amount uses the K constant for DR, which will change with new tiers of raid content just like Armor.


Brewmaster Stagger will reduce an incoming hit and spread that damage out over the next 10 seconds. The amount that it will reduce a hit is now also subject to diminishing returns.

Calculating stagger is a bit tricky, but Swol (our leading theorycrafter), spent some time reverse engineering it. (He shared it with some other theorycrafters, and now we want to share it with you).

The tooltips can be misleading, so we’ll break it down.

  • Base Stagger = 1.4 * Agility

This can then be multiplied by several effects:

  • Fortifying Brew multiplies by 1.5
  • High Tolerance multiplies by 1.5
  • Ironskin Brew multiplies by 3.5

Don’t let the tooltips on these abilities fool you — they are more like a rough idea of what the final benefit will be, not the actual multiplier.

After we have our base stagger, it then works a lot like Block Amount:

Stagger Reduction = Base Stagger / (Base Stagger + K)

Let’s look at an example: if you had 4000 Agility at player level 120:

  • Stagger Reduction = (1.4 * 4000) / (1.4 * 4000 + 6300) = 47%

If you have Fortifying Brew:

  • Stagger Reduction = (1.4 * 1.5* 4000) / (1.4 * 1.5* 4000 + 6300) = 57.1%

Pretty close to the 10% bonus stated on the tooltip.

Note that Stagger uses the K constant for DR, which will change with new tiers of raid content.

Chance to Avoid Attacks

All 6 tank specs can avoid attacks in different ways. (Non-tank specs can too, but we won’t talk about them because it’s not important for raiding.) We will also only talk about fighting raid bosses (who are 3 levels higher than you).

  • Chance to Block: Protection Paladins, Protection Warriors
  • Chance to Dodge: Vengeance Demon Hunters, Guardian Druids, Brewmaster Monks
  • Chance to Parry: Blood Death Knights, Vengeance Demon Hunters, Protection Paladins, Protection Warriors

All three of these types of avoidance have a portion that gets diminished using the following formula:

Diminished Chance = Chance / (Chance * v + h)

We will use the shorthand diminish(Chance) for this in the formulas in each section, and provide the values for the constants “v” and “h” in each case.

Block Chance

Final Block Chance = Base Block + diminish(Block from Mastery)
  • v = 0.0067 for blocking in BfA, we reverse-engineered this value from in-game tests.
  • h = 1 / 0.94 for blocking in BfA, this is the same as Legion, which we verified with in-game tests.
  • Base Block is 10% for all shield-users in BfA, and protection warriors get a passive +8% on top of that.

Only warriors and paladins get block from mastery. Warriors get 0.5 times their mastery, paladins get 1 times their mastery.

A little aside on mastery:

Most people don’t know that “mastery” is just a number that is the same for every player. With no gear, everyone has 8 mastery. Then at level 120, every 72 mastery rating adds 1 mastery.

Then, every spec has a spec-specific multiplier on that mastery number that does a special spec-specific thing. In this case, it increases chance to block.

Block chance example:

Let’s say a paladin has 300 mastery rating, or (8 + 300/72) * 1 = 12.17% extra block from mastery:

Final Block Chance = 10 + 12.17 / (12.17 * 0.0067 + 1/0.94) = 20.63%


Final Dodge Chance = 3 + (Base Agility / P) + diminish(Bonus Agility / P + Critical Strike / D)
  • Base Agility = What you would have with no gear equipped, the “white” number on the in-game character sheet Agility tooltip. Note that the character sheet includes the draenei racial bonus to Agility in the base agility, but it isn’t actually — it is Bonus Agility.
  • Bonus Agility = Any extra Agility gained from gear, buffs, etc. If you have an Agility multiplier, it will multiply your Base Agility too — the extra amount goes into your Bonus Agility, it does not increase your Base Agility (and the in-game UI displays it as such).
  • P = a constant that means “avoidance per primary stat”. Is is the same for everyone (and will be used in Parry too)
    • P = 452.27 for level 120 players
    • P = 111.83 for level 110 players
  • v = 0.02 for Demon Hunters, 0.01 for everyone else
  • h = 1/0.97 for Druids, 1/0.94 for everyone else
  • Critical Strike = Your Critical Strike Rating gained from gear, buffs, etc.
  • D = Conversion constant from Critical Strike Rating to Dodge Chance
    • D = 80 at level 120 (80 Critical Strike Rating = 1% Dodge)
    • D = 19.58092206 at level 120

So breaking down each part of the formula:

“3”: Everyone has a base 3% chance to dodge.

“Base Agility / P”: The dodge tank specs get additional “base” dodge from “base” Agility. This dodge is not diminished. Base Agility is what you would have with no gear equipped, and is based on your class and race.

“Bonus Agility / P”: Then, all dodge-tanks get additional dodge from “bonus” Agility. This is any extra agility above your base, naked Agility. This dodge is diminished.

“Critical Strike / D”: Next, only Guardian Druids get dodge from Critical Strike (ignore this part for other specs). This dodge is diminished.

When avoidance is diminished, all sources of “diminishable” avoidance are added together, then diminished all at once, then added to any “non-diminishable” sources.

So for example, say you are a 120 Guardian Druid with

  • 1468 Base Agility (“white” number of in-game Agility tooltip)
  • 1501 Bonus Agility (“green” number of in-game Agility tooltip)
  • 453 Critical Strike Rating

Bonus Dodge (from bonus agility and crit) = 1501 / 452.27 + 453 / 80 = 8.98

Final Dodge Chance = 3 + (1468 / 452.27) + (8.98 / (8.98 * 0.01 + 1/0.97)) = 14.26%


Final Parry Chance = 3 + (Base Strength / P) + diminish(Bonus Strength / P + Critical Strike / D)

This works the same way as Dodge, so we’ll only make a few notes for clarification:

  • The constants P, v, h, and D are all the same as Dodge.
  • Strength is used instead of Agility.
  • All 4 parry tank specs get parry from Critical Strike.
  • Vengeance Demon Hunters get no Parry of any kind from Strength. The 3 plate specs get Parry from Strength in the same way that the other 3 specs get Dodge from Agility.

As an example, say we have a 120 Protection Warrior with:

  • 1467 Base Strength
  • 1853 Bonus Strength
  • 532 Critical Strike Rating

Bonus Parry (from bonus strength and crit) = 1853 / 452.27 + 532 / 80 = 10.75

Final Parry Chance = 3 + (1467 / 452.27) + (10.75 / (10.75 * 0.01 + 1/0.94)) = 15.42%

Block, Dodge & Parry when you attack a boss

When we say a ‘boss,’ we mean a target that is 3 levels higher than you, like raid bosses and the raid training dummy.

When you attack a boss from the front, the boss has a chance to avoid your attack. If you attack from behind, your attacks will never be blocked, dodged, or parried.

Ok, so if you are attacking a boss from the front, the values are pretty simple.

  • Boss Block chance: 7.5% for everyone
  • Boss Dodge chance: 0% (bosses don’t dodge anyone)
  • Boss Parry chance: 3% for DPS. Bosses cannot parry tank attacks

There are a couple of exceptions and things to note.

  • Certain bosses cannot avoid attacks in any way, for example, Garothi in Legion. In general, if it is impossible to get behind a boss, Blizzard disables Blocks and Parries.
  • When you get blocked, you do 30% less damage for that attack.
  • Bosses can block auto attacks and special abilities like weapon attacks. Spells cannot be blocked. For example, for a Protection Paladin, Judgment cannot be blocked, but Shield of the Righteous can be blocked.
  • Critical hits can also be blocked. Way back in the day, that might not have been the case because of the whole ‘hit table’ thing. But that isn’t the case anymore, a critical hit can be blocked.

Protection Warrior Rage Generation

Rage generation does not diminish like the other mechanics we talked about, but the game is unclear about how much rage you generate. We have reverse-engineered it from game tests and spell data.

There are two sources:

  1. Auto attacks. You generate 1.75 * weapon speed * 0.44 rage per auto attack. Most 1-handed weapons are 2.6 speed, so that’s 2 rage per auto attack. The 0.44 multiplier is found on the core passive spell.
  2. Getting hit by melee attacks. Each time you get hit by a boss melee attack, you gain 3 rage. Mainly this is just boss auto attacks, but sometimes other attacks are considered melee and would probably trigger it. The difference would be small though — the important thing is that e.g. boss AoE attacks and DoTs do not generate rage, so please don’t stand in the fast-ticking fire puddle!

There appears to be some kind of internal cooldown on rage generated from getting hit, but we weren’t able to nail it down in our tests. We plan to do more testing to confirm it. We’ve seen 1 second stated in a few places, but that didn’t match a couple of our tests. We’ll report back when we have more data.

Simming Tanks

We have a BfA version of our simulator. As always, you’ll be able to sim tanks – both damage and tankiness.

Want more articles like this?

We have a 3-part tank series coming out soon that covers the in’s and out’s of simming tanks. And of course, we’ll also have articles for DPS and healers.

Sign up for our email list so you don’t miss a post. We will never spam you and absolutely won’t send you ‘promos’ (because no one likes that). We will send 1-4 emails a month about blog posts and major site updates.

And if for some reason, you don’t like what we send? Every email has an unsubscribe link, which leads to plenty of robot tears, but he’ll understand.