Stretching, when done the right way at the wrong time can absolutely be killing your gains. The issue is that many people do not know the difference between active and static stretching and the impact that is doing one over the other before your workout can be having on your strength and ultimately your size gains.
In this following video, Jeff from Athlean-X YouTube channel show you why you should not do static stretching that you hold for any length of time before you train if you want to get maximum muscle growth and strength.
The issue boils down to neural efficiency. When you perform any movement, it doesn’t matter if it is something you would define as an exercise, your body has a stored pattern for accomplishing it. It does this in order to create movement efficiency. If I drop a pen on the ground and I bend to pick it up, your body doesn’t have to think about every single joint component of motion that is needed to get you down to the ground. Instead, it thinks of the “squat” movement in general and is able to instantly help you down to the floor without wasting any time.
Check out the following video:
When you perform static stretching of muscles that are going to be trained in your workout that day, you are negatively interfering with your stored engrams or motor patterns. While increasing flexibility and the length of a muscle can be a very good thing long term, doing stretches just before your workout that temporarily do this can have this associated downside that winds up costing you gains from your workouts.
The length-tension relationship between muscles is something that you have that is unique to you and different from one muscle to the next. While not all length-tension relationships are optimal, it is still what your body is used to and what is being used by it when calling on the stored motor pattern when performing a movement. Static or passive stretching before a workout will temporarily disrupt these patterns by affecting the actin and myosin cross bridging.
If you were going to use this method of warming up for a workout, you would then have to spend a significant amount of time before starting your training just to attempt to re-integrate the movements to better match up to the engrams stored for that movement pattern or exercise. In this case, I would suggest doing two or three light sets of each of the exercises you were going to do in that workout after completing the static stretching routine. This could add at least a half an hour to your workout when you account for the stretching and the re-integration.
There is a better way. You can instead opt to perform active or dynamic stretching for the muscles that are going to be involved in the exercises you are about to perform that day. These are movement stretches that take your joints actively into new ranges without ever holding for any length of time. The disruption to the muscles is greatly minimized, and your ability to feel loose and perform at a high level is maintained.
That said, static stretching is still vital and has a place in your routine. The best thing to do is do your stretches for the muscles that you worked that day, later on at night before you go to bed. When you sleep, your body heals itself, and the muscles that were trained tend to heal a bit shorter. You can lessen this shortening effect by performing the static stretches just before laying down. When you wake up the next morning, you should not only feel looser but, you will likely have less muscle soreness as well.