APM Types

APM stands for Actions Per Minute, it is a measurement of how fast players are during games, how many commands they issue during 1 minute. Higher APM means more activity. The word minute is used, but there are actually 2 kinds of time measurements. Blizzard uses a different time measurement referred to as game-time which depends on the game speed, and is approximately 1.38 times faster compared to the "real" time on "Faster" game speed (which means 1 minute and 24 seconds game-time is equal to 1 minute real-time). Sc2gears can calculate APM values using both game-time and real-time which can be set on the Replay parser tab of the Miscellaneous settings dialog.

APM calculation is pretty simple: one just have to divide the number of actions with the number of minutes where the actions spread in time. For example 200 actions in 1 minute results in 200 APM. The first 90 seconds of games (can be changed) are always excluded from APM calculations. Moreover the duration for APM calculations are determined by the last actions of the players. For example if a player leaves after the 4:30 time mark, his/her APM values will be calculated with a 3-minute long game.

Some external readings on APM: APM on Wikipedia, APM on Liquipedia

Sc2gears can calculate and display many APM types which mainly differ in what is included or excluded from the actions that are used to calculate the APM value. You can run tests as to what actions are effective or considered micro if you enter the actions in the Build order import window (available from the File menu). Details about the build order import: Build order import

Google Ads

APM (or Normal APM)

Normal APM accounts all actions given by the player.

There are still some actions that are excluded which are referred to as inactions or "no actions". These include actions that are not issued by the player (for example a hotkeyed Hatchery transforms into a Lair) or does not have an effect on the game (move screen/camera; the outcome/effect of the actions and the game does not depend on where the objects are displayed on your screen, what matters is the position (x and y coordinates) where you click on the map).

EAPM

EAPM stands for Effective APM. EAPM measures the amount of useful/effective commands that would be given by a player in 1 minute.

EAPM calculation is similar to APM, but it excludes actions that are seemingly useless/needless. The algorithm uses different rules to classify actions effective or ineffective.

EAPM rules

Commands that are considered ineffective:

    • Commands that are reported to have failed. This "failed" flag is reported by StarCraft II if a player holds down a hotkey and causes multiple actions at the same frame (tick). Only available from replay version 1.3.3.

    • Too fast cancel (~0.83 sec): if a command (like train, research, upgrade, hatch) gets cancelled right away. Both the cancel action and the action that was cancelled are considered ineffective.

    • Too fast repetition of some commands in a short time (~0.42 sec) (regardless of their destination, if destination is different/far, then the first one was useless).

    • These commands include: Right click, Stop, Hold position, Move, Patrol, Scan Move, Attack, Set Rally Point, Set Worker Rally Point, Hold fire, Halt (on building), Halt (on unit), Attack (Bunker), Stop (Bunker), Land, Toggle Auto-repair, Neural Parasite, Toggle Auto-heal, Charge, Attack Structure, Toggle Auto-attack Structure, Toggle Auto-charge, Toggle Auto-spawn Locusts

    • Too fast switch away from a selected unit or re-selecting the same units without giving them any commands (~0.25 sec) (by too fast I mean there is not even time to check the state of the units and optionally react to it accordingly); double tapping a hotkey to center a group of units is NOT considered ineffective.

    • Repetition of some commands without time restriction.

    • These commands include: multiple Hotkey (re)assign, the same research, the same upgrade; Gather Resources (Terran, Protoss, Zerg), Return Cargo, Cloack, Decloack, Siege Mode, Tank Mode, Assault Mode, Fighter Mode, Burrow, Unburrow, Phasing Mode, Transport Mode, Generate Creep, Stop Generating Creep, Weapons Free, Cancel an Addon, Mutate into Lair, Cancel Lair Upgrade, Mutate into Hive, Cancel Hive Upgrade, Mutate into Greater Spire, Cancel Greater Spire Upgrade, Upgrade to Planetary Fortress, Cancel Planetary Fortress Upgrade, Upgrade to Orbital Command, Cancel Orbital Command Upgrade, Salvage, Lift Off, Uproot, Root, Lower, Raise, Archon Warp (High Templar or Dark Templar), Hellion Mode, Battle Mode, High Impact Payload, Explosive Payload, Activate Mine, Deactivate Mine

Commands that are NOT considered ineffective:

    • Double tapping a hotkey to center the group.

    • "Slowly" (no more than ~4 selection changes per seconds) selecting units or buildings to check their state but not giving new order to them.

    • I do not check the target point of move commands: if they are close in time, the first is ineffective (unneccessary); if they are not close in time, they are both effective even if they point to the same location (issuing another move will cause StarCraft II to recalculate path and therefore resulting in faster arriving in many cases).

Notes:

    • Unit queue overflow (if more units are trained than the selected buildings can queue; or in case of Zerg if more units are trained than the number of selected Larvas) should be considered ineffective; also quickly adding waypoints which are not too close should be considered effective. These 2 cases are not yet implemented, but since implementing the first case would decrease EAPM and the second one would increase it, the effect of not implemented these 2 rules does not change the calculated EAPM significantly.

    • Also note that unit queue overflow is most likely the result of "failed" actions which are already excluded from EAPM (as the #1 rule).

Redundancy

Redundancy is simply the ratio of the actions that are considered ineffective. Redundancy = ineffective actions / all actions * 100 % = (APM - EAPM) / APM * 100%.

20% redundancy for example means that 20 actions out of 100 are considered ineffective.

Micro APM and Macro APM

Micro and Macro APMs are calculated from a subset of the actions. Each action is either micro or macro so Micro APM+Macro APM = APM.

Classification of actions

As a general rule actions that require resources or free resources are considered macro actions, for example unit trains, builds, upgrades, researches, "Upgrade to Greate Spire", Salvage etc.

Select and Hotkey actions that include only buildings are macro actions, the remaining Select and Hotkey actions are considered micro actions.

Exceptions/additions:

  • Cancel commands, resource trading related commands and "Merge Archon" are macro actions.

  • "Cancel Warp Gate Upgrade", "Cancel Gateway Mutation", "Cancel Tac Nuclear Strike" are considered micro actions.

  • Repair -although requires resources- is considered a micro action.

Exceptions of selecting/hotkeying units/buildings:

  • Larva is considered a macro action, Creep Tumor, flying Terran buildings, uprooted Zerg buildings are considered micro actions.

All actions that were not mentioned (and are not Inactions like "Move Screen") are considered micro actions, for example "Right click".

XAPM (eXtended APM)

Many questioned why camera hotkeys are not included in APM and have asked for it. Well, they have never been, and including screen movements in APM would just make the APM chaos even more complicated. ("Is it SC2 APM or EPM?", "Is it Sc2gears APM?", "Is it real-time or game-time?")

On the other hand moving the screen by clicking on the mini map or pressing a camera hotkey has the same value and function just like double pressing a hotkey to center the assigned units which is included in APM (and even in EAPM).

To leave APM (and its concept) as it is but still provide a way to measure these screen movements, the APM chart of the Replay analyzer introduces the XAPM (eXtended APM). XAPM is turned off by default and can be made visible by selecting the "Show XAPM" check box. When selected, the XAPM chart will be drawn with a dotted line, and the calculated XAPM for the whole game (excluding the first x seconds) will be displayed in the player headers.

XAPM includes all actions that are included in APM plus move screen actions which move the screen on the horizontal plane with at least a certain distance (delta>=15).

Therefore –beyond actions included in APM– XAPM includes (assumed you looked elsewhere):

    • camera hotkey usage

    • (left) clicking on the mini map to move your screen

    • clicking on the portrait of the selected unit to center the unit on the screen

    • pressing the space key to center the location of the latest event

XAPM does not include:

    • scrolling your screen with the cursor keys (keyboard)

    • scrolling your screen by moving your mouse cursor to the side of the screen (side scrolling)

    • spamming the same camera hotkey or (left) clicking on the mini map to approximately the same location

Other arbitrary APM types

Using Sc2gears you can calculate and display the chart of any other arbitrary APM types. To do this, you have to enable the "Use listed actions as chart input data" check box below the action list, and use the filters on the right of the action list to filter actions you want to be included in the APM calculation. The (normal) APM value will show you the value what you're looking for.

Examples:

    • Let's say you want to display the "Hotkey usage APM". To do this, enter the filter text: "hotkey". That's all.

    • Other example: let's display the "right clicking APM". Simply enter the filter text: "Right click".

    • Another strange example: let's display the "Supply increasing APM". To do this, enter the filter text: "build pylon OR build supply OR train overlord OR build hatchery OR build nexus OR build command center OR calldown extra supplies" (these are the actions that increase your supply).

Connections between Blizzard's APM (seen in replays) and Sc2gears APM types

Blizzard only shows you your real APM from replay version 2.0. In replays below version 2.0 only the APM value calculated with game-time can be seen.

In versions 1.4.3-1.5 Blizzard mixed up APM and EPM: APM shows your EAMP and EPM shows your APM. APM (which shows EAMP values) values seen in replays are Blizzard's own interpretation of Effective APM which fails to consider some key aspects as to what is considered effective (calculated with game-time of course).

In version 1.4-1.4.2 APM values seen in replays are Blizzard's own interpretation of Effective APM which fails to consider some key aspects as to what is considered effective (calculated with game-time of course).

If real-time is enabled in Sc2gears (it is by default), APM and EAPM values will be your real APM and EAPM values.

If game-time is enabled in Sc2gears, then APM values will be approximately the APM values seen in replays before version 1.4, EAPM values will be approximately the same as the APM values seen in replays from version 1.4.

The following table summarizes the APM types that you can see in Sc2gears and in StarCraft II:

Average APMs in the Multi-replay analysis

The Multi-replay analysis calculates and displays average APMs and average EAPMs of players. These average APM values are weighted APM values. The weights are the lengths of the games they come from.

For example if a player in a time period played 2 games, one being 10 minutes long and having 100 APM, and another being 20 minutes long and having 200 APM, the average weighted APM for this period will be:

(10min*100 + 20min*200) / 30min = 166.

(Note that the first 90 seconds (can be changed) is omitted from both the actions count and the game length.)