It is often said that the English "there is" or "there are" is expressed in Spanish using the verb hay (which is a form of the verb haber), and indeed that is usually the case. However, there are some instances where forms of the verb estar — typically está (singular) or están (plural) — should be used.
The difference is one in meaning. Hay is used to refer to mere existence, while está or están is used to describe location.
As an example, look at the following simple sentence: "There is a book." The English is ambiguous. The sentence could be phrased as "a book is there," meaning that a book is in a certain location. Or could be interpreted as "a book exists." In Spanish a different verb would be used in each instance.
To say that the book is in a location, use a form of estar:
- El libro está allí. (The book is there.)
But to say it merely exists, use a form of haber, in this case hay:
- Hay un libro. (A book exists.)
The same principle applies in many other cases where the English might be ambiguous:
- No hay dinero. (There isn't any money, because it doesn't exist.) El dinero no está. (The money exists, but it's not here.)
- No hay profesor. (There's no teacher, meaning, for instance, that one hasn't been hired.) El profesor no está. (There's a teacher, but the teacher isn't here.)
- Hay dos escuelas. (There are two schools, that is, two schools exist.) Dos escuelas están allí. (There are two schools, meaning, two schools are in the direction that is being pointed to.)
- Hay vacas en Argentina. (There are cows in Argentina.) Las vacas están en Argentina. (The specific cows are there, in Argentina.)
Abstract nouns, or nouns that don't refer to an object that can exist in a specific location, normally would not be used with estar, but with a form of haber.
- Hay muchos problemas. (There are many problems.)
- No hay felicidad sin amor. (There is no happiness without love.)