I had mine at 36 weeks that way I had enough time to set babies closet up and if I needed anything I didn't get at the shower I was able to buy on my own
I'm having two because my parents are divorced and my mom and my step mom both want to throw me one. But my first will be at 30 weeks and my second will be at 33 weeks. They were trying to do them at 36 weeks and 37 weeks but I didn't want to wait that long... You'll want time to get other things that you need that you don't get your shower and time to put everything exactly how you want it... So I think 30-35 weeks is the perfect time to have a shower