Future Perfect: With FOR

Future Perfect: With FOR

Measuring time from the past into the future

In the previous use case, you learned that the Future Perfect describes an action that will be completed before a future point. This use case is closely related — but the focus shifts from completion to duration. When the Future Perfect is used with for, it expresses how long an action or state will have been going on by a specific future point.

Think of it as drawing a line from the past, through the present, and forward into the future. The action started in the past, it is still ongoing now, and it will continue until a future moment — and the Future Perfect with for tells you the total length of that line when it reaches the future point.

By next June, I will have worked here for ten years.
(I started ten years ago — I'm still working here now — by June, the total will be ten years)

By the time they graduate, the students will have studied the language for four years.
(They started four years before graduation — graduation is the future point — four years is the total duration)

By their anniversary next year, they will have been married for forty years.
(They married forty years before the anniversary — the anniversary is the future reference point)

The structure — will have + past participle + for + duration

Subject + will have + past participle + for + period of time + by / by the time + future point

I will have worked here for ten years by next June.
She will have lived in London for twenty years by the time she retires.
They will have been partners for two decades by the end of this contract.

Negative: Subject + won't have + past participle + for + period
I won't have slept properly for a week by the time this project ends.

Question: How long + will + subject + have + past participle + by...?
How long will you have worked here by the time you retire?

The parallel with the Present Perfect — for vs by

The Future Perfect with for has a direct parallel with the Present Perfect with for. The structure and logic are identical — only the reference point shifts from now to a future moment:

Present Perfect + for (reference: NOW)Future Perfect + for (reference: FUTURE POINT)
I have worked here for nine years.
(nine years up to now)
By June, I will have worked here for ten years.
(ten years up to June)
She has lived in London for fifteen years.
(up to now)
By next year, she will have lived there for twenty years.
(up to next year)
They have been partners for ten years.
(up to now)
By the end of this contract, they will have been partners for twenty years.
(up to the end of the contract)

FOR vs SINCE with the Future Perfect

As with all perfect tenses, for and since work differently:

  • for + period of time: for ten years, for three months, for a long time, for decades
  • since + starting point: since 2010, since she was a child, since the company was founded
By next June, I will have worked here for ten years. (duration — how long)
By next June, I will have worked here since 2015. (starting point — when from)

Both are correct — they express the same idea from different angles. For states the total length; since states the starting year.

Common mistakes to watch out for

❌ Mistake 1 — Using the Future Simple instead of the Future Perfect with FOR

✗ By next June, I will work here for ten years.  ·  By the time she retires, she will teach for thirty years.  ·  By their anniversary, they will be married for forty years.

✓ By next June, I will have worked here for ten years.  ·  By the time she retires, she will have taught for thirty years.  ·  By their anniversary, they will have been married for forty years.

THE RULE

The Future Simple cannot express a duration — it describes a single future event or action. When you want to say how long something will have been going on by a future point, you need the Future Perfect: will have + past participle. The combination of for + a duration + a future reference point (by, by the time) always signals the Future Perfect.

❌ Mistake 2 — Using the Present Perfect when the reference point is a future moment

✗ She has lived in London for twenty years by next January.  ·  By the time he retires, he has worked here for forty years.  ·  By their anniversary, they have been married for fifty years.

✓ She will have lived in London for twenty years by next January.  ·  By the time he retires, he will have worked here for forty years.  ·  By their anniversary, they will have been married for fifty years.

THE RULE

The Present Perfect with for refers to how long something has been going on up to now. When the reference point is a future moment — next January, by retirement, by their anniversary — you must switch to the Future Perfect. The signal is always the future reference point: by + future time, or by the time + future clause.

❌ Mistake 3 — Using SINCE instead of FOR with a duration

✗ By next June, I will have worked here since ten years.  ·  By the time they move out, they will have lived there since eight years.  ·  Fans will have waited since two years by the finale.

✓ By next June, I will have worked here for ten years.  ·  By the time they move out, they will have lived there for eight years.  ·  Fans will have waited for two years by the finale.

THE RULE

Since is followed by a specific starting point in time (since 2015, since January, since she was born). For is followed by a period of time — a duration (for ten years, for eight months, for a long time). Never use since before a number of years, months, or days. If you have a quantity of time, always use for.

❌ Mistake 4 — Using the wrong verb form after WILL HAVE

✗ By next spring, she will have study the violin for twenty years.  ·  By next July, they will have own the house for twenty-five years.  ·  He will have run — no wait: He will have ran the department for five years.

✓ She will have studied the violin.  ·  They will have owned the house.  ·  He will have run the department.

THE RULE

After will have, always use the past participle. For regular verbs: add -edstudied, owned, waited. For irregular verbs: use the correct past participle, not the Past Simple → run (not ran), known (not knew), been (not was/were), taught (not teach). The structure is always will have + past participle — nothing else can follow will have.