The reason is simple, you didn't install it properly. Some customers scoff at that and say it must be the BB or the bearings themselves, but it's not. Play does not come from the bearings being worn/bad like older BBs where the spindle was part of the BB. The change to integrated spindles about 5-7 years ago was in part to fix this. Play now is caused by loose/mis-installed cranks.
And the biggest culprit is the GXP style BB. But why?
From SRAM: "The GXP system captures the left side bearing between the spindle and the left crankarm while allowing the drive-side bearing to float axially on the spindle, thereby eliminating the necessity to side-load bearings during adjustment."
Sounds great in theory as this design takes the load off the drive side bearing which usually takes the bulk of abuse from being ridden. The GXP design strives to save the drive side bearing from an early failure.
But in practice it's a headache if you don't have experience and the patience to properly install. It's not as simple as installing the cranks and torquing everything down tight. In fact, you might have to repeatedly remove and install the cranks to remove play. The GXP design uses a stepped down spindle which means the non drive side of the spindle tightens against the non drive bearing from the inside (other designs like Shimano's see the bearings tighten up against from the outside). If the width of your BB shell is off either way (too narrow or too wide) issues will creep up.
If there is play in the crank, the left arm is not fully bottomed out. Remove the arm, regrease the splines (with a heavy grease) and reinstall. But you better use a torque wrench because the non drive crankarm bolt needs roughly 54nm of torque. Not sure how much that is? Shimano 10 cranks use 1.5nm of torque! That's quite a difference.
We've heard of mechanics having to remove/re-install up to 6 times to remove play. Someone somewhere probably has done more than that. And add in the issue of the non drive crankarm bolt loosening with use and we've now got real problems. So even if you can remove play, it can come back as you ride because the bolt loosens. We've found Loctite on the threads helps with this.
But that's not all. We have seen some variation in the tolerance of GXP crankarms. Small tolerance variation in the spindle results in a less than tight fit between the crank spindle/non drive bearing interface. Heavy grease seems to fix this for a period of time but if the spindle has been worn or was made slightly out of spec at the factory you'll have to re-torque even more than normal.
So the next time you have play in your SRAM (GXP) cranks, don't blame the BB! Instead get some grease and get ready to get dirty because you got some greasing and torquing to do! Better check the facing of your frame as well. Most frame makers do NOT do this for you and it is essential to your external BB working properly. You want a square 68mm (or 70mm Italian) BB shell. Without that, anything goes!
If you absolutely cannot remove the play, you most likely have a width issue in the BB shell and you will have to add spacers to widen the BB.