In my area, there are currently three Mystic gyms, and two have their banners shown while the other does not:
What determines whether a gym shows the banner of the team that controls it?
Based on the evidence being gathered in this thread, it looks like a gym will display banners if the total CP of the Pokémon in the gym surpasses 8000.
Just in scanning over the active gyms in the area, it looks like Banner Flags show up when the total CP of the defending Pokémon passes a certain number. There're two that I can see from here with only 3 Pokémon on them – one with flags and one without.
Has banner flags
- 2985+2682+2882=8549 CP
- Dragonite, Gyarados, Snorlax
Doesn't have banner flags
- 2992+2362+1686=7040 CP
- Tyranitar, Rhydon, Gyarados
Gym I could see from here had no banners when there were 3 pokemon in it: Rhydon 2744, Snorlax 1884, Gyarados 2098 = 6726.
A 4th was added, Vaporeon 2079 to bring the total to 8805 which raised it and banners are flying.
The two gyms near me are both bannerless with totals of 5286 (2 players) and 7551 (3 players)
I've got a Gym that was at 8100 & 4 Pokémon and had banners, and is now at 7800 with the same 4 Pokémon on there, but all the banners have gone.