了 is not a past tense
Start by killing the worst habit. 了 does not mean 'past'. It is not a tense marker at all - Mandarin has no tense. 我昨天去 (wǒ zuó tiān qù), I went yesterday, is perfectly past with no 了 in sight, and 明天我就走了 (míng tiān wǒ jiù zǒu le), I'm leaving tomorrow then, is future with a 了 sitting right there. What 了 actually marks is aspect and change: whether an action is completed, and whether a situation is new. Hold that distinction and the rest follows. For the wider aspect system that 了 belongs to, see aspect markers.
The position test
As with most Mandarin particles, look at where the 了 sits before you ask what it means.
- Verb + 了 (the 了 touches the verb, with an object or other material after it): aspectual / completion 了. It marks the action as actualised.
- ... 了 (the 了 is the very last thing in the clause, nothing after it): change-of-state / sentence-final 了. It marks a new situation.
So 我吃了饭 (wǒ chī le fàn), with 了 wedged between the verb 吃 and its object 饭, is the completion 了: I have eaten / I ate (the meal got eaten). But 我吃饭了 (wǒ chī fàn le), with 了 sitting at the very end after the object, is the change-of-state 了: I'm eating now / I'm off to eat now - a new situation announced. Same three words, the 了 moved one slot, completely different meaning. That single shift is the heart of the topic.
Aspectual 了: the action got done
The verbal 了 attaches directly to the verb and says the action was completed or reached its endpoint. It is the 了 of 'this happened and finished'.
- 他睡了八个小时 (tā shuì le bā gè xiǎo shí) - he slept for eight hours (the sleeping is a completed quantity)
- 我买了三本书 (wǒ mǎi le sān běn shū) - I bought three books (the buying happened, three of them)
- 她喝了一杯咖啡 (tā hē le yì bēi kā fēi) - she drank a cup of coffee
- 我们看了那部电影 (wǒ men kàn le nà bù diàn yǐng) - we watched that film
Notice what these share: each verb has a quantified or specific object behind it - 八个小时, 三本书, 一杯咖啡, 那部电影. Aspectual 了 is most at home when the object is measured or definite, because completion wants something concrete to have been completed. A bare 我吃了饭 on its own actually feels unfinished to a native ear, as though you are waiting for the next clause (我吃了饭就走 (wǒ chī le fàn jiù zǒu) - once I've eaten I'll go). For the counting words those objects need, see classifiers and numbers, time and dates.
The negation test confirms it. Aspectual 了 is negated with 没 (méi), and the 了 vanishes: 我没买书 (wǒ méi mǎi shū), I didn't buy any books - never ✗我没买了书. If a 了 disappears under 没 negation, it was the completion 了.
Change-of-state 了: things are different now
The sentence-final 了 sits at the end of the whole clause and says a new state of affairs has come into being. Nothing needs to have been 'completed'. The action or condition may be ongoing - the point is that it is now true when it was not before.
- 下雨了 (xià yǔ le) - it's raining now (it wasn't, now it is - the rain is very much still going)
- 我会游泳了 (wǒ huì yóu yǒng le) - I can swim now (a new ability; nothing was completed, a state changed)
- 天黑了 (tiān hēi le) - it's got dark
- 他是老师了 (tā shì lǎo shī le) - he's a teacher now
- 我不喝酒了 (wǒ bù hē jiǔ le) - I don't drink any more (a change to a new, ongoing not-drinking)
That last one is the clincher for anyone still clinging to the past-tense idea: 不喝酒了 is about giving up drinking going forward, the opposite of past. With adjectives the change-of-state 了 is the normal way to say something has become so: 贵了 (guì le), it's got more expensive. This pairs with how adjectives behave as predicates in the first place - see adjectives as stative verbs. And with modal verbs like 会, the sentence-final 了 is what turns 我会游泳 (I can swim, a flat fact) into 我会游泳了 (I can now swim, a newly acquired skill); more on those verbs in modals and intent.
When both 了 appear at once
Here is the sentence learners fear: two 了 in one clause, one after the verb and one at the end. It is not a typo and it is not redundant. The verbal 了 marks the action complete; the sentence-final 了 adds that this completion brings us to a new point, often 'and that's the state now' or 'already'.
- 我吃了三碗饭了 (wǒ chī le sān wǎn fàn le) - I've eaten three bowls of rice now (and that's where things stand) - the first 了 completes the eating, the second says 'this is the current tally, more than you'd expect'.
- 他学了两年中文了 (tā xué le liǎng nián zhōng wén le) - he's been studying Chinese for two years now - completed two years' worth, and the studying is still going. Drop the final 了 (他学了两年中文) and it reads as he studied Chinese for two years, finished, no longer studying. The final 了 is what keeps the action live.
- 我们等了很久了 (wǒ men děng le hěn jiǔ le) - we've been waiting a long time now (and still are).
The pattern is clearest with durations: Verb + 了 + duration + object + 了 says 'so much has accumulated and it continues'. Without the final 了, the same sentence reports a closed, finished stretch. This is exactly the territory of duration complements, where the difference between an ongoing and a finished span is the whole game.
Minimal pairs side by side
Move only the 了 and watch the meaning swing.
| Sentence | Pinyin | 了 type | Meaning |
|---|---|---|---|
| 我吃了饭 | wǒ chī le fàn | aspectual | I ate / having eaten (completion) |
| 我吃饭了 | wǒ chī fàn le | change-of-state | I'm off to eat now / I'm eating now |
| 他学了两年 | tā xué le liǎng nián | aspectual | he studied for two years (and stopped) |
| 他学两年了 | tā xué liǎng nián le | change-of-state | he's been studying two years (still is) |
| 下雨了 | xià yǔ le | change-of-state | it's started raining |
| 雨停了 | yǔ tíng le | change-of-state | the rain's stopped |
The top two are the canonical pair: identical words, the 了 one slot apart, completion versus change.
The common errors
Error 1: using 了 as a blanket past tense
Because English forces a past tense and learners reach for 了 to supply it, 了 gets sprayed onto every past sentence whether or not anything was completed or changed.
- ✗ 我以前每天都跑步了 - WRONG. A habitual past ('I used to run every day') is not a completed event and not a change of state, so no 了: 我以前每天都跑步 (wǒ yǐ qián měi tiān dōu pǎo bù) - I used to run every day.
- ✗ 我昨天很累了 - WRONG if you just mean you were tired. A flat past description takes no 了: 我昨天很累 (wǒ zuó tiān hěn lèi) - I was tired yesterday. Add 了 only if you mean you've become tired now: 我累了 (wǒ lèi le) - I'm tired now.
If nothing completed and nothing changed, there is no 了, past tense or not.
Error 2: keeping 了 under 没 negation
The completion 了 and the negator 没 do the same job from opposite ends, so they cannot co-occur. Negate with 没 and the 了 must go.
- ✗ 我没吃了饭 - WRONG. 没 already cancels the completion: 我没吃饭 (wǒ méi chī fàn) - I didn't eat / haven't eaten.
- ✗ 他没来了 - WRONG for 'he didn't come': 他没来 (tā méi lái) - he didn't come. (他不来了 (tā bù lái le), with 不 and a final 了, is a different sentence: he's not coming after all - a change of plan.)
Error 3: dropping the final 了 from a 'still ongoing' duration
The reverse of error 1. With durations, learners write only the verbal 了 and accidentally close off an action that is meant to be continuing.
- ✗ 我在这儿住了五年 (meaning 'I've lived here five years and still do') - this actually reads I lived here for five years (and have since moved). To keep it live you need the final 了 too: 我在这儿住了五年了 (wǒ zài zhèr zhù le wǔ nián le) - I've lived here five years now (still here).
The final 了 is not optional decoration here; it is the difference between a finished stretch and a continuing one.
Error 4: forcing 了 onto verbs that resist it
Some verbs - states of mind, perception, equation - rarely take an aspectual 了 because they do not have a clean completed endpoint.
- ✗ 我昨天知道了他 - awkward. 知道 (know) is a state, not a completed act. Use 我昨天认识了他 (rèn shi, came to know) or simply 我昨天知道他来 (wǒ zuó tiān zhī dào tā lái) - I knew yesterday he was coming.
- A sentence-final 了 on these often works fine as change-of-state, though: 我知道了 (wǒ zhī dào le) - ah, I get it now / understood, the new state of knowing.
What to drill
- Run the position test first. A 了 touching the verb is aspectual completion; a 了 alone at the clause end is change-of-state. Decide on slot before meaning.
- Stop using 了 as a past tense. Habits, ongoing descriptions and plain past facts take no 了. Only completion or change earns one.
- Drill the 吃了饭 / 吃饭了 pair aloud. Same words, the 了 one slot apart, completion versus 'off to eat now'. This pair is the whole topic in miniature.
- Use 没, lose the 了. Negated completion never keeps its 了: 没吃饭, never 没吃了饭.
- Master the double 了 on durations. Verb + 了 + span + 了 means it accumulated and continues; drop the final 了 and the span is closed and finished.
For the broader aspect system 了 sits inside, see aspect markers. For the duration sentences where both 了 fight for space, see duration complements. For the ability and intention readings the change-of-state 了 produces with 会 and 要, see modals and intent.