Combat is divided into several steps: Beginning of Combat, Declare Attackers, Declare Blockers, Combat Damage, and End of Combat. Spells and abilities can be cast or activated whenever a player has priority, which happens after each step's turn-based actions and triggered abilities are put on the stack (CR 116.3, 509.4).
In the Declare Blockers Step, the active player (the attacking player) first declares blockers as a turn-based action — no player has priority during this declaration itself (CR 509.1, 509.2). Once blockers are legally declared, the game checks for triggered abilities, puts them on the stack if any, and then gives priority to the active player (CR 509.4). At this point, both players may cast instants, activate abilities, or use anything with flash before combat damage is ever assigned.
This is important because it is your last chance to cast spells before first strike damage (if applicable) or regular combat damage is dealt. You can use removal, pump spells, or tricks to change the combat outcome after seeing how blockers are assigned.
Example: Your 2/2 attacks and your opponent blocks with their 3/3. After blockers are declared and priority is passed to you, you cast Giant Growth (an instant) to make your creature a 5/5 until end of turn — now your creature survives and destroys theirs. This all happens before any combat damage is assigned (CR 510.1).
The key rule is CR 116.3b: a player receives priority after all turn-based actions for a step are completed and triggered abilities are placed on the stack, which happens immediately after the declare blockers action in the Declare Blockers Step (CR 509.4).
Unofficial fan resource — not affiliated with or endorsed by Wizards of the Coast. Answers are AI-generated estimates grounded in the Comprehensive Rules and are not a substitute for an official judge. Verify anything match-critical.