bag of bones
Synonym discussion
Sense: noun/1
These words all describe a lack of body flesh but differ in severity and tone. 'Skinny' is the mildest and most everyday — a skinny person may be healthy but lean. 'Scrawny' adds a note of weakness or poor condition, often describing animals or underfed children. 'Gaunt' points to a hollow-cheeked, exhausted appearance, typically from illness or extreme hardship. 'Emaciated' is the strongest and most clinical, reserved for dangerous wasting from starvation or disease. 'A bag of bones' sits in informal territory: it paints a vivid, almost shocking picture and is never neutral — it expresses pity, concern, or alarm. You would not call a fashion model 'a bag of bones' without sounding harsh. Comparing the two: 'The scrawny kitten shivered in the rain' is sympathetic but mild; 'The kitten was a bag of bones' is more urgent, suggesting the animal is near death.
Etymology
The phrase 'bag of bones' draws on a blunt, physical image: a sack filled with loose bones, suggesting a body that has lost nearly all its flesh and substance. It has been used in English since at least the early 1700s to describe people or animals reduced to a skeletal state by hunger or illness.