We previous used a size small on our 4.5 lb yorkie and it was a too large so we ordered an xs this time and it is almost too tight on him. Quite a bit of difference between the two sizes.
For my 4 lb chihuahua. XS was a good fit he has a 9 inch neck and a 13 inch chest. The material is a little thin so I don't think it's as warm as some of his other coats but I like that it's feet first with closure on the back. It's cute to have coats that close in the front but not as easy to manage