Casting speed is the time it takes for a spell to take effect. Some spells are "instant" and take effect immediately, while some spells are "channeled" and have their effects occur over the duration of the cast. Others take effect after a specific "cast time", with typically more powerful spells having longer cast times. Regardless of the type of spell, there is a global cooldown that prevents rapidfire spellcasting even with "instant" spells.
Various factors can reduce a spell's "cast time" from its base "cast time" (specified in the spell):
- Class talents: Most classes have talents that can reduce the cast time of:
- Spells: Some classes have spells that temporarily reduce the cast time of subsequent spells, such as Nature's Swiftness. Spell haste is calculated based on modified casting speed; for example, with the warlock's Bane talent, the spell haste would be calculated with 2.5 second Shadowbolts rather than 3 seconds.
- Certain items: Provide a "spell haste" bonus or a "spell haste rating" bonus. Spell haste rating is used to determine the characters spell haste bonus. At level 80, 32.79 points of spell haste rating grants 1% spell haste bonus. As of 2.4.0 spell haste also influences spellcasting global cooldown.
Because of the general global cooldown on spells of 1.5 secs, spell haste effectively had a cap on it for casters. This has changed with patch 2.4 — spell haste also reduces the global cooldown for spells, to a minimum of 1 second. However, spell haste still reduces the actual time spent casting, which can be advantageous when dealing with spell push back or trying to avoid interrupts.
Spell haste also reduces the amount of time before the first cast takes effect, which is advantageous in the opening of duels or in situations calling for sporadic, but quick, healing.
Channeled spells are affected by haste and will see a reduction in their time spent channeling the spell, but no change in overall damage, resulting in a DPS boost. Additionally, haste scales at the same rate for channeled spells and spells with a standard cast time.
Casting speed calculation
% Spell Haste at level 70 = (Haste Rating / 15.77)
% Spell Haste at level 80 = (Haste Rating / 32.79)
New Casting Time = Base Casting Time / (1 + (% Spell Haste / 100))
Note that "base casting time" is after talents. For example, a warlock's shadow bolt is 3.0 "base cast time" under normal usage of the term "base cast time". However, for the purpose of this formula, you should use the improved cast time from your talents (2.5 cast time, in this example) if you have that talent, or the formula will not give the correct result.
Essentially, 1% haste allows a player to cast 1 additional spell in the time it would normally take to cast 100 spells. If the spell is a 3 second cast, that means one can theoretically cast 101 spells in 300 seconds, or 2.97 seconds per spell.
To determine the amount of time taken to cast a given sequence of spells, the reverse formula can be used, where Base Casting Time is the sum of all the spells in the given sequence:
Haste Rating needed at level 70 = ((Base Cast Time / Desired Cast Time) - 1) * 15.77 * 100
Haste Rating needed at level 80 = ((Base Cast Time / Desired Cast Time) - 1) * 32.79 * 100
Example: I am a level 70 mage, and I want my Fireball (3s), Fireball (3s), Scorch (1.5s) cast chain to take 6.5 seconds. Therefore, a [1577 * ((7.5 / 6.5) - 1) = ~243 Haste Rating] is required.
Note: Blizzard rounds to 4 significant digits.
Haste Rating used to be split into "Haste Rating" (which only affected attack speed) and "Spell Haste Rating" (which only affected spell casting speed). The two have been unified as of patch 3.0.2 into one universal Haste Rating stat. All gear which used to have Spell Haste Rating now has an equal amount of Haste Rating.
Improving casting speed
Various sources that improve casting speed are listed on the Casting Speed improving items page.
Note: Haste rating stacks additively with itself but haste stacks multiplicatively. That means that if you have 158 haste rating, you will have +10% haste, no matter how many sources and items that haste rating comes from. If you then use troll Berserking for +30% haste, you would have 110% * 130% = 143% haste.
Recieving a damaging attack while casting will "push back" the cast by 0.5 seconds. This is visible from the casting bar flinching away from completion. Only the first two attacks will cause pushback, in effect lengthening the casting time by 1.0 seconds. Some talents reduce the amount of pushback by 70%. The reduction is additive to a paladin's concentration aura (another 35%) which will negate spell pushback.
Note: Before 3.0, spell pushback ranged from 0.5 to 1.0 seconds per hit and was not limited to just the first two hits, which made casting extremely difficult when repeatedly taking direct damage.
The global cooldown for casters with no haste is 1.5 seconds. Haste reduces the global cooldown according to the general formula for haste:
- NewCastTime = BaseCastTime * ( ( 1 + HasteRating / ( RatingConversion * 100 ) ) ^ -1 )
RatingConversion represents the haste rating required for 1% haste at a given level.
|Haste Rating Required Per 1%|
|Level 60||Level 70||Level 80|
The amount of haste required to reduce the global cooldown to a desired value can be calculated by:
- Haste = ( ( BaseCastTime / DesiredCastTime ) - 1) * 100
- For example: 100% haste = ( ( 1.5s / .75s ) - 1) * 100
Rearranging the general formula for haste:
- HasteRating = ( RatingConversion * 100 ) * ( ( BaseCastTime / NewCastTime ) - 1 )
For example: 500 hasteRating = ( 10 hasteRating * 100 ) * ( ( 1.5s / 1s ) - 1 )
To reduce the global cooldown to an arbitrary value of 1 second, it would take 50% haste or a haste rating of:
|Level 60||Level 70||Level 80|
With raid buffs such as Wrath of Air Totem and Swift Retribution, the number will be lower.