Â
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. English âI have spokenâ almost always comes out as the simple past falei.
ter (present) + past participle · tenho falado = I've been speaking (repeatedly, lately, still going) â I have spoken (= falei)
Sign up to save your progress, practice exercises and unlock all grammar content.
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). The participle never changes.
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.
Triggers to listen for: 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; in real Brazilian life the auxiliary is ter.
Far rarer than English have + participle â most of those English sentences come out as a simple past in Portuguese.
Portugal uses it the same way: one of the rare points where Brazilian and European Portuguese agree.
This is the tense English speakers get wrong most often, and the mistake is invisible: Tenho falado com ele is a perfectly good sentence, so nobody corrects you â you have simply said something you did not mean. 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 most of what everyday small talk actually is.
Take ter, conjugate it in the present, and park a past participle behind it. The participle is frozen â it never agrees with anybody.
| 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. |
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.)
Stretching it across a long period with hĂĄ. "I have lived here for three years" is not tenho morado; Brazilians use 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) is many separate days piling up into a pattern. Both are correct â they draw different pictures.
Importing the Spanish habit. Spanish he hablado ("I have spoken") maps onto falei (I spoke), not onto tenho falado (I've been speaking). If Spanish came first for you, assume the transfer is wrong here until you have checked it.
Get full access to grammar lessons, exercises, vocabulary and personalized review with a free Falando account.