I recently got a message that says

Haven't heard anything from you in a while.

I always thought that the right way to say this would be to use for insdead of in. Are both versions correct? Would there be a difference in meaning?

5 Answers 5


I'm trying to capture a vague idea floating in my head. Not sure I can explain adequately.

First off, both "in a while" and "for a while" are grammatical and idiomatic per se. However, to me, "for a while" would mean that their hearing from you is an ongoing process, which you interrupted for some time — or well, for a while —, but then resumed. Which is not what the sentence is supposed to express.

What you want instead is "in a while", which also means "for some period of time" but without implying that the contact has been re-established already, or indeed ever will be. Which is the whole point of that sentence, after all. It's just a reminder that it should be.

So I would most definitely say, "Haven't heard anything from you in a while".

This might be just my dialect/idiolect, though. I haven't checked any corpora.

  • 3
    For what it's worth, I have exactly the same vague idea floating in my head.
    – Marthaª
    May 12, 2013 at 15:59
  • 2
    So, as I understand, if I wrote to someone after a long period of time, then I would most likely get "haven't heard from you for a while" in reply. On the other hand, if it was the other person who initiated the correspondence, he will probably write "haven't heard from you in a while", because he wonders why I haven't got in touch with him for so long. In fact, that was the case with me.
    – msgmaxim
    May 12, 2013 at 20:23
  • The “vague idea” is because for a while specifies a limited time period. If I haven't heard from you for a month, then the period is over – but it's ambiguous whether it's the silence ending, or just the month. May 13, 2013 at 4:01
  • FWIW, the Oxford Dictionaries don't do any kind of distinction. It's nice to see that others use them in the same way I do. Sep 14, 2014 at 8:24

The sentence you give should be:

"Haven't heard anything from you in a while."
"Haven't heard anything from you for a while."

No difference in meaning in this case, at least, not to my knowledge in American English, and not in my idiolect. But there would in these cases:

I'll give this to you in a while. [Not now, but maybe tonight or next week.]
I'll give this to you for a while. [You can have it for a week or maybe a month, but then I want it back.]


The distinction between for Duration and in Duration depends on where the Reference Time is. Reference time is an Instant in time, not a Duration; but Duration is measured from it.

  • In Duration refers to a time period Duration long that ends at the Reference Time
  • For Duration refers to a time period Duration long that begins at the Reference Time.
  • How does this apply to the example, and are you suggesting "for a while" cannot begin before "now" in the example (surely not?)? May 12, 2013 at 20:59
  • According to Google Books estimated results, "haven't seen him for years" is actually somewhat more common than "haven't seen him in years" - but that's a different context, where they must mean the same thing anyway. John concisely summarises the distinction for contexts such as "We'll stop in/for ten minutes" May 12, 2013 at 21:33
  • 1
    @ John: Just a wild guess, but might it be that in "haven't seen him for/in years", the "Reference Time" is actually years ago, when he was last seen. And that this in/for distinction only applies when the Reference Time is now or in the future, not in the past? May 12, 2013 at 21:38
  • 1
    @FumbleFingers Is it just my perception but do we use in a while in Britain? It sounds distinctly American to me. I would always say for a while.
    – WS2
    Jun 11, 2015 at 16:46
  • 1
    As soon as you add a negative to any example, there is a sea change, into something rich and strange. Adding negation does not simplify syntax. Jun 12, 2015 at 14:39

These phrases have similar meanings. They are not usually interchangeable, but there's one exception.

for a while

This phrase indicates a limited, continuous time period. If you go on vacation for a week, you will be gone continuously until a week has passed and then return.

not for a while

If you won't return from vacation for a week, you will be absent for a week and then return. This usage implies a definite end to the period, although the exact timing may be vague (a while).

haven't for a while

If you haven't seen him for a week, then he was absent for that duration. Because for indicates a limited time, this often implies that the absence has ended (as RegDwighт suggests). However, when talking about a fixed time leading up to the present, it may simply note that the time period has ended, not the action.

in a while

This phrase indicates a time some distance away – usually, but not always, in the future. If you go on vacation in a week, you will not leave until a week from now.

not in a while

If you won't return from vacation in a week, then you will still be gone a week from now, with no indication of when you will actually return. This usage typically indicates a deviation from plans or expectations: We can't get the job done in a month.

haven't in a while

If you haven't seen him in a week, then he disappeared a week before now. This usage indicates a time some distance in the past. There is no implication that the period has ended.


For the example in the question, haven't for a while and haven't in a while are roughly interchangeable. For carries a weak implication that the absence has ended; in does not.


Correct Standard English dictates:

  • the use of for for duration — "for a length of time", "for seven days", etc.
  • the use of in (= "shortly") for pending future action only
  • We shall see each other for a long time/for seven days.
  • We shall see each other in two days' time/in a short while.

If the action or non-action belongs in the past and continues in the present, then it is more fluent Standard English to use for:

I haven't seen you for a while/for a long time.
[= It has been a while/a long time since I saw you.]

If the action belongs in the future, then, and only then, is "in a while" correct.


  • I have not heard from you for a while.

    — past

  • I shall not hear from you in a while.

    — future

  • Sorry, I can't agree. 'I haven't heard from her in months' is perfectly idiomatic in informal speech. Jul 10, 2019 at 14:28

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