B1 (Intermediate)Lesson 10: Compound Past Tenses
Brazilian Portuguese joins ter in the present to a past participle — tenho falado — but the result is not the English present perfect. It describes something repeated or continuous across a recent stretch of time that runs up to now and is still going. For a completed conversation, English “I have spoken” normally comes out as the simple past falei.
Formation: ter in the present + past participle — tenho falado, tem comido, temos saído (I've been speaking, he's been eating, we've been going out). In this compound tense, the participle after the auxiliary ter is invariant.
Meaning: something repeated or continuous over a recent stretch of time that reaches the present — Tenho trabalhado muito. (I've been working a lot.)
It is not the English present perfect: "I have spoken to him" is Falei com ele.
Time expressions often used with this meaning: ultimamente, recentemente, nos últimos meses, nesses últimos dias (lately, recently, in the last few months, these past few days).
haver + participle (hei falado) is the bookish alternative; ter is the usual everyday auxiliary.
Its use is more restricted than English have + participle: Portuguese uses a simple past for the completed events illustrated here.
European Portuguese also uses it for repetition or continuity up to the present.
ter (present) + past participle · tenho falado = I've been speaking (repeatedly, lately, still going) ≠ an automatic translation of I have spoken (falei for a completed conversation)
Sign up to save your progress, practice exercises and unlock all grammar content.
This tense can mislead English speakers because of its form: Tenho falado com ele is a perfectly good sentence, but it may express something other than what you meant. You reported a run of conversations stretching over weeks when you meant one phone call this morning. Getting the split right does two things at once: your simple pasts stop sounding vague, and you gain the natural Brazilian way of saying what has been going on in your life lately, which is useful in everyday small talk.
Take ter, conjugate it in the present, and park a past participle behind it. In this compound tense, the participle after the auxiliary ter is invariant — it does not agree with the subject.
| Person | ter + participle | Meaning |
|---|---|---|
| eu | tenho falado | I've been speaking |
| você / ele / ela | tem falado | you've / he's / she's been speaking |
| a gente | tem falado | we've been speaking |
| nós | temos falado | we've been speaking |
| vocês / eles / elas | têm falado | you've / they've been speaking |
| Portuguese | Meaning |
|---|---|
| Tenho pensado muito nisso. | I've been thinking about it a lot. |
| A Ana tem chegado atrasada todo dia. | Ana has been arriving late every day. |
| Não tenho tido tempo para nada. | I haven't had time for anything lately. |
| Vocês têm ido à academia? | Have you been going to the gym? |
| O meu filho tem comido melhor. | My son has been eating better. |
| Tem chovido muito em São Paulo. | It's been raining a lot in São Paulo. |
| A gente tem conversado bastante. | We've been talking quite a bit. |
| Eles têm feito hora extra todo mês. | They've been working overtime every month. |
| Ultimamente eu tenho lido antes de dormir. | Lately I've been reading before bed. |
| Os preços têm subido sem parar. | Prices have been going up nonstop. |
Using it for one finished event. Tenho perdido a chave sounds like you mislay your key every other day. For the key you lost this morning: Perdi a chave. (I lost my key. / I've lost my key.)
Pinning it to a closed time. The band of time has to reach the present, so a finished time marker breaks it: not Tenho falado com ele ontem, but Falei com ele ontem. (I spoke with him yesterday.)
Translating "Have you ever...?" literally. Você tem comido açaí? (Have you been eating açaí lately?) is a real sentence — just not the one you meant. For "Have you ever eaten açaí?" you want Você já comeu açaí?
Agreeing the participle. After ter the participle never moves: not Ela tem falada, but Ela tem falado. (She has been speaking.)
Translating an ongoing residence duration mechanically. For "I have lived here for three years", the natural everyday formulation is the present: Moro aqui há três anos. (I've lived here for three years.)
Mixing it up with estar + gerúndio. Estou trabalhando muito (I'm working a lot) is right now, or this stretch of days; Tenho trabalhado muito (I've been working a lot) shows repetition or continuity across a period reaching the present. Both are correct — they draw different pictures.
Importing the Spanish habit. Spanish he hablado does not map automatically onto either tense: use falei for a completed conversation and tenho falado for repetition or continuity up to now. Check the intended meaning and context.
Get full access to grammar lessons, exercises, vocabulary and personalized review with a free Falando account.