English Language Learners Stack Exchange is a question and answer site for speakers of other languages learning English. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

As I know, we could use “for” with perfect tense to talk about a period of time. However, I am still not sure how to use “for”.

Could you tell me which sentence below is okay? I don't know I should use only one "for" or two "for"."

I have been waiting for a bus 20 minutes.

I have been waiting for a bus for 20 minutes.

share|improve this question
up vote 4 down vote accepted

Both sentences are acceptable. Both, however, are a little awkward.

  • The first makes use of the quite ordinary expression

    I have been waiting 20 minutes.

    For is not necessary; the semantics of the verb wait make it perfectly clear what role 20 minutes plays in the sentence. But when you put for a bus between the verb and the time expression, the connection is broken; it takes a few microseconds of extra mental processing to figure out what role 20 minutes plays.

  • The second runs you up against what linguists call horror aequi—we don’t like using similar constructions too close to each other. For X for Y just feels uncomfortable. (This is a cross-language phenomenon and is probably what raised your question in the first place.)

The solution is very simple—flip your two adjunct phrases:

I have been waiting 20 minutes for the bus.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.