NadeKing Logo
CS2Tricks
CS2 Jump Throw and Run Throw Guide

CS2 Jump Throw and Run Throw Guide

By VigilApril 15, 2026

Jump throws and run throws are the difference between a smoke that lands exactly where you practiced it and one that lands three feet short because you threw a tick early. If you've ever hit a lineup in your own server and then whiffed it in a match, this is why.

Image

Jump throw vs. run throw vs. run jump throw

Three different releases, three different results:

  • Jump throw: jump, release the grenade at the peak of the jump. Removes your movement velocity from the throw entirely, so the same lineup gives you the same trajectory every time. This is what most "standing" lineups on this site assume unless stated otherwise.
  • Run throw: release while sprinting forward, no jump. Your run speed adds to the grenade's velocity, so it travels further and flatter than a standing throw from the same spot. Used for smokes and flashes that need extra distance you can't get standing still.
  • Run jump throw: sprint into a jump and release at the peak. Combines both, max distance and max height. This is how you get smokes over walls a standing jump throw won't clear.

Here's a run jump throw that clears a wall a standing jump throw can't reach:

Loading nade...

Same grenade, same spot, three different landing zones depending on which one you use. If a lineup guide doesn't specify, assume standing jump throw. It's the default because it's the most repeatable.

The bind is dead. Deal with it.

Old jump-throw binds combined jump and release into a single keypress:

alias "+jumpthrow" "+jump;-attack"
alias "-jumpthrow" "-jump"
bind "key" "+jumpthrow"

Valve killed this on official, VAC-secured servers with the August 19, 2024 "Side-stepping Skill" update. The patch notes specifically called out removing binds that chain more than one movement or attack action into a single input. Run-throw binds that stacked +forward, +jump, and -attack together died the same day for the same reason.

This wasn't aimed at grenade binds specifically. Valve was shutting down Razer's Snap Tap-style input automation for counter-strafing, and jump-throw binds got caught in the blast radius. Pros were furious, understandably, since jump-throw binds had been standard practice since 1.6. It didn't get walked back.

What still works legally:

  • Mouse wheel jump. bind mwheelup +jump (or mwheeldown) maps one physical input to one action, so it's not a chained bind. Scroll to jump, click to release manually at the peak. This is the closest thing to the old bind's consistency you'll get without breaking the rules.
  • Manual jump throw. Space to jump, left click to release near the top of the arc. CS2's timing window here is more forgiving than CS:GO's was, and Valve improved the jump-throw preview camera in a 2026 update so you can actually see where your nade will land while you're holding the throw. Use it while practicing, it'll cut your calibration time by half.
  • Mouse-axis workaround. A more involved setup that rebinds a mouse axis (usually mouse_y) to fire the throw alias instead of chaining it to a key directly. Each individual action stays a separate input, so it doesn't trip Valve's rule against multi-action binds. It works on official servers right now, but it's fiddlier to set up than it's worth for most players, and rules that ban "automated" throws tend to catch it in spirit even where they don't catch it in the letter of a config file. Most tournament rulesets (ESL, BLAST, most FACEIT leagues) either ban it outright or leave it in a gray zone, so check before you build your practice routine around it.

If you're playing in anything with an admin watching demos, don't lean on the mouse-axis trick. If you're just climbing MM or Premier rank, mouse wheel jump plus manual release is legal everywhere and gets you 95% of the consistency for none of the risk.

Practicing the manual release

This is the actual skill now, so treat it like one instead of a workaround:

A fixed standing throw with no run component keeps the timing simple while you calibrate. This one works well for it:

Loading nade...
  1. Go into an offline server or your local dev server with sv_cheats 1 and mp_restartgame 1 so you can rapid-reset.
  2. Pick one lineup you already know cold, like the one above.
  3. Jump, hold the grenade, and release right as your character model reaches the top of the arc, not when the jump sound plays. That's a frame or two early for most people.
  4. Watch where it lands relative to the lineup image. If you're consistently short, you're releasing before the peak. If you're consistently long or the arc looks wrong, you're releasing on the way down.
  5. Do 15-20 reps in one sitting, then stop. Muscle memory for release timing builds in short, frequent sessions, not marathon ones.

For run throws, the same idea applies but you're calibrating your sprint distance before the throw instead of jump height. Start your run from the same fixed point every time (a wall corner, a specific texture on the ground) so the variable you're isolating is release timing, not start position.

Why this actually matters for your lineups

A lineup on this site (or any site) is only as good as your ability to reproduce the exact throw type it was recorded with. A smoke recorded as a standing jump throw will fall short as a plain run throw, and a run jump throw executed as a standing jump throw might not clear the wall it's meant to clear. When you're following a lineup and it's not landing right, the first thing to check isn't your camera angle or your standing spot. It's whether you're using the release type the lineup actually calls for.

If you play in a league or scrim environment with strict rules on binds, ask your team or your admin explicitly what's allowed before you build fifty lineups around a mouse-axis script. Better to find out now than to relearn everything the week before a qualifier.