In the main series games, there is a concept of STAB (same type attack bonus), where a pokemon of a certain type will get an additional attack bonus (+50%) when using a move that has the same type. This bonus is in addition to any modifiers caused by the target pokemon's resistances.

For example, a Fire type pokemon using a Fire type move would do additional damage, compared to a non-Fire type pokemon using a Fire attack, or a Fire type using a non-Fire type attack.

  • 1
    You're welcome :) There's also a related question.
    – pinckerman
    Jul 13, 2016 at 19:42
  • I saw that, but it was a tertiary question, and didn't seem to be answered definitively, so I thought it deserved its own specific question.
    – shenles
    Jul 13, 2016 at 19:44
  • 1
    Sure, I've not flagged it as a dupe. I meant that you may find the info you're looking for if someone answers that question.
    – pinckerman
    Jul 13, 2016 at 19:49

2 Answers 2


Yes, it does. But only at 1.25x. Here is the decoded protobuf file. In it is this:

Items {
  BattleSettings {
    RetargetSeconds: 0.5
    EnemyAttackInterval: 1.5
    AttackServerInterval: 5
    RoundDurationSeconds: 99
    BonusTimePerAllySeconds: 10
    MaximumAttackersPerBattle: 20
    SameTypeAttackBonusMultiplier: 1.25
    MaximumEnergy: 100
    EnergyDeltaPerHealthLost: 0.5
    DodgeDurationMs: 500
    MinimumPlayerLevel: 5
    SwapDurationMs: 1000
  • The fact that the value is in the config file does not mean it is being used when calculating total damage. This need to be confirmed by some other means (decompile or playtesting and writing down exact damage dealt)
    – Lope
    Aug 9, 2016 at 10:43
  • 2
    @Lope This is not a config file. I'm a bit out of my depth here so maybe someone else can step in. But my understanding is that messages are passed between server and client in protobuf format. By itself, this data isn't very meaningful. But someone has obtained the schema (the structure) of the messages (possibly by decompiling the apk). By applying the schema to the protobuf encoded message, we have the above decoded structures. In this particular structure, the server is telling the client to use a 1.25 as the SameTypeAttackBonusMultiplier. Aug 9, 2016 at 14:32
  • 1
    I see, if it's indeed protobuf, than it is quite likely it's actually used, but still not 100% sure :) you can send data that you don't use, it might be there for some future use or fragment of old code, but that's not very likely since they would want to optimize the hell out of their traffic as they have so much troubles keeping servers up and running. Thanks for clarification
    – Lope
    Aug 9, 2016 at 15:35
  • 1
    Considering the sheer quantity of players, it is extremely unlikely NIantic are not optimizing the data transfer here and are still sending unused data. They already cut out the pokemon maps for captured pokemon because their servers couldn't handle the load. This is pretty close to confirming that STAB exists.
    – Nelson
    Aug 22, 2016 at 3:03

Since there has been posted proof now, the STAB modifier is indeed in the game, just not as high as it used to be in the other games.

The exact calculations are

  • super effective: x1.25
  • not very effective: x0.75
  • STAB: x1.25
  • Just note that STAB hitting a Not Very Effective = x1, so having STAB basically offsets a bad matchup, unless the other opponent is STAB with super effective.. then you'll be hurting still :)
    – Nelson
    Aug 22, 2016 at 3:04
  • I might be wrong, but I think that if those modifiers applied as you said, the result of 1 x 1.25 x 0.75 might be <1 (0.9275). So it wouldn't really offset it completely.
    – DarJul
    Jan 18, 2017 at 0:29
  • I don't believe the formula is that simple. I think it's somewhat like (Atk*1.25 + Atk*0.75) / 2, which would be Atk * 1.
    – dly
    Jan 18, 2017 at 6:57

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .