For anyone who is interested, I ordered a small and a medium and ended up keeping the small. They both fit, but the small just fits a bit better. On the medium, the nylon/fabric areas were a bit bunched up and awkward, especially around his neck and shoulders.
ETA: He is 40lbs, 25" girth. He's a long dog, so I though the small would be way too small, but I adjusted the straps to a bit bigger than the halfway point and it fits well. On the medium they were all adjusted down about as small as they would go.