Learn English – I was there for two days or I was there two days

grammar

Which variant is correct?

I was there for two days.

I was there two days.

And what about use for with stay?

I stayed there for two days.

I stayed there two days.

Best Answer

The preposition for is entirely optional in OP's exact context. My first thought was it makes no difference what the preceding verb is, but on reflection that's not quite right. Consider...

1: I fed my neighbour's cat three days.
2: She listened five hours.
3: They paid the mortgage two decades.
4: He pestered her five days.
5: I read [a book] three hours.

I don't like any of the above without for. But I've no problem with...

5: I've lived here twenty years.
6: We stayed six weeks.
7: They waited two hours.
8: He slept eight hours.

I think the distinction turns on the fact that it's acceptable (but not required) to drop the preposition for before the time-frame IF the verb that it adverbially modifies implies some kind of extended action or state that inherently has a duration.