In a practice (American English File 4 - 2nd Edition - 1 A - Work Book ) I'm asked to write the proper form of the question,

" - How long have you been learning English for?
- For about three years. "

The answer in the manual is "How long have you been learning English? ". I just want to know that, is using "for" here necessarily wrong?

  • There is a grammar "rule" that you're not supposed to end a sentence with a preposition, and for is a preposition. But in reality it's not so much a "rule" as it is a "myth" - it's wrong in some languages, but not in English. Ending your example question with for is unnecessary, but it's not actually wrong.
    – nnnnnn
    Commented May 27, 2016 at 7:17

2 Answers 2


This is exactly the same reason you wouldn't say:

When did you leave at ?

I left at 5:00 pm.

At 5:00 pm already answers to When, therefore at is redundant.

I can't say if they are strictly wrong grammatically, but you would not use them as they are, at best, clumsy and unnatural. Moreover, think about the situation where your interlocutor doesn't want to answer with for, but with since ?

However, in a discussion such as:

I've been working out

Really?! For how long?

Is acceptable, common, and may be even more natural than Really?! How long?.

Also, you wouldn't say:

How long are you here?


How long are you here for?


As usual, context is key in English, and some expressions could be correct in some cases, but wrong in others, and your best ally is intuition and drowning yourself in English everyday.

In your case,

How long have you been learning English?

Is the natural way to say it.

  • Not germane to your point, but I want to warn readers that "How long are you here?", can be used colloquially to mean "How long are you here for?", i.e. about the future; but speakers of other languages sometimes understand it to mean "How long have you been here?", i.e. about the past.
    – Colin Fine
    Commented May 27, 2016 at 10:47

"For" suffixed after a question implies a purpose. for example: what do you learn English for? it's the same as asking why do you learn english.

The "For" in the answer is used to show an amount of time

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .