Trainer Battle

Trainer Battles are a feature in Pokémon GO that lets Trainers battle against each other, with different rules compared to Gym or Raid Battles. Trainers will need to choose a league before going into a Trainer Battle, with each league having different maximum Pokémon CP limits. Trainers can challenge one another using a Battle Code, assemble a team of three Pokémon, and see who comes out on top. When Trainer Battles are completed, both participants will receive great rewards, including a chance at rare, coveted Evolution Items.

Battle Leagues
There are three Battle Leagues to choose from: Great League, Ultra League, and Master League. Great League & Ultra League will need to be unlocked by both trainers with the minimum requirements to battle in. Each Trainer are only allowed to assign three Pokémon to a Battle League party. Battles are fast-paced and real-time and a Trainer's selected team of Pokémon will be able to execute both their Fast Attack and Charged Attack moves.

Using Charged Attacks in Trainer Battles additionally have the Battle Minigames mechanic.

Two Protect Shields may be deployed to save Pokémon from critical damage, running out of them the Pokémon will be left defenseless. If the battle's time limit has been reached, the victor will be decided by whomever has the most knock-outs. Tie battles are also possible when both Trainers lose are possible.

Trainers will usually have find other Trainers on their nearby tab to initiate a Trainer Battle, but Ultra and Best Friends can challenge each other from any distance. Battling against another Trainer adds a new option for increasing your friendship, similar to participating in a Raid Battle together or exchanging Gifts.

At the end of a battle, both Trainers will receive prizes regardless of whether they win or lose. Rewards can be rewarded up to three times per day by battling other Trainers, but progress toward medals will continue after that. The end of a battle will also give Trainers an option to propose a rematch, or to send them a Friend Request if they're not already friends.

Pokémon are automatically returned to their previous health after Trainer Battles. If they were not at full health, they enter Trainer Battles at full health, and are returned to their previous health after. However, fainted Pokémon cannot be used.

Banned Pokémon
Ditto and Shedinja are banned in Trainer Battles.

Team Leader Battles
Team Leaders Spark, Candela, and Blanche are available to battle, any time, any place. Trainers can earn rewards once per day when training with a team leader. Finally, you can work toward earning an Ace Trainer medal once again.

Each Team Leader will always have the same defined set of Pokemon (with a different team for each League), much like battling Gym Leaders in the main series games. They never used protect shields until an update in July 2019, which also changed their teams. They would always block the first two Charged Attacks used against them with protect shields in the Master League, but in the other two cases, they still never use shields.

The Pokémon in the teams are comprised of Fire-types for Candela, Water- and Ice-types for Blanche, and Electric-types for Spark. Their Pokémon can have different Fast and Charged Attacks everyone you battle them, although they will only have one of each within the same battle.

Rewards
After finishing each day's first three Trainer Battles and the first Team Leader Battle, trainers receive random combination of the following rewards.

The amount of Stardust awarded is the same for all three leagues in Trainer Battles, but in Team Leader Battles, Great League only gives 300/600 Stardust, and 400/800 for Ultra League.

Stat boosts
Beginning on February 16, 2019, certain Charged Attacks have a chance to trigger stat boosts during Trainer Battles. These stat boosts persist on the affected Pokémon until they either faint or are switched out of battle.

Development
When designing Trainer Battles, Niantic wanted to create an experience that everyone could enjoy and ensure that different kinds of Pokémon can show their strengths. With Leagues in Trainer Battles, they hope to create a system that's accessible to many Trainers.

Currently, battles have a four minute timer and the time is only displayed during the final 20 seconds of battle, but this could change before release.

Trivia

 * Trainer Battles became available on December, 2018, following the forced roll-out of update 0.131.1.
 * Rare Candy was added to be a reward on January, 2019.
 * Fast TM and Charged TM were added to be rewards on February, 2019.
 * In the first set of Team Leader team:
 * The last Pokémon in each leader's Great League team is always a Starter Pokémon.
 * The first Pokémon in each leader's Ultra League team is always an Alolan-form Pokémon.
 * The second Pokémon in each leader's Master League team is always the only one that does not have their typical type(s).
 * The last Pokémon in each leader's Master League team is always a member of Legendary Bird Trio.
 * In the current set of Team Leader team:
 * The last Pokémon in each leader's Great League team is always Castform weather form.
 * The first Pokémon in each leader's Ultra League team is always an Eeveelution.
 * The first Pokémon in each leader's Master League team is always a member of Legendary Beast Trio.
 * The second Pokémon in each leader's Master League team is always a Pseudo-legendary Pokémon that does not have their typical type(s).
 * The last Pokémon in each leader's Master League team is always a member of Legendary Bird Trio.