
Joan H. answered 05/05/19
Native Spanish Speaker with a Degree and 15+ Years of Experience
Hi! This is a very good question.
You can use the word "bonito" when you talk about people, animals, or things. For example:
Ese bebé está muy bonito (That baby is very pretty)
Ese carro deportivo está bonito (That sport car is pretty).
El perro de mi amigo está bonito (My friend's dog is pretty).
Now, when you talk about a grown-up man... the correct word should be "guapo" or "apuesto". That doesn't mean you are not going to hear "bonito" for a man. For example, in the Caribbean (Cuba, Puerto Rico, DR), you will hear expressions like:
"Ese muchacho está bonito!" (That guy is cute! or "pretty").
"Que bonito es mi esposo!" (How "pretty is my husband!)
In conclusion, the correct word for a man is "guapo" or "apuesto". For a woman you can definitely say "bonita". For animals, things, and even people (like kids), you can say "bonito". You would not say that a baby is "guapo".
I hope this answers your question.