Preterite vs Composto vs English Present Perfect

This is one of the most expensive false friends in the whole language for English speakers, because the trap is structural: Brazilian Portuguese has a tense that looks exactly like the English present perfect — auxiliary "have" plus a past participle — but means something quite different. The form tenho feito is built like "I have done," yet it does not mean "I have done." Getting this wrong doesn't just sound foreign; it changes the meaning of your sentence. This page sorts out which BR tense actually carries the work of the English present perfect. For the formation details, see Forming the Pretérito Perfeito Composto.

The two BR tenses in play

Pretérito perfeito simplesfiz, falei, comi. A single, completed past action. One event, finished.

Pretérito perfeito compostotenho feito, tenho falado, tenho comido. A repeated or continuous action that began in the past and is still going on up to now. Built with the present of ter + past participle.

The English present perfect, meanwhile, covers a wider range of meanings than either BR tense — and that mismatch is the whole problem.

💡
The composto in BR is NOT a single completed act. "Tenho feito" never means "I (once) did / have done it." It means "I have been (repeatedly) doing it" right up to the present moment. The auxiliary look-alike is a trap.

What the composto really means

Whenever you see tenho + participle, read it as "I have been ...-ing (lately / these days / recurringly)." It implies repetition or duration continuing into the present.

Tenho estudado muito ultimamente.

I've been studying a lot lately. (repeated, ongoing up to now)

Ele tem chegado atrasado todos os dias.

He's been arriving late every day.

Não tenho dormido bem.

I haven't been sleeping well (these days).

Notice that every natural English translation uses "have been ...-ing," not "have done." The composto carries an unmistakable sense of a pattern that is still in force. Drop the time-frame and it sounds incomplete to a Brazilian ear, the way "I have been studying" floats without "lately" in English.

What the simple preterite really covers

The pretérito perfeito simples does the work that English splits between the simple past AND the experiential present perfect. A one-time completed action — whether English would phrase it as "I did" or "I have done (once)" — is the simples in BR.

Já fiz o relatório.

I've already done the report. (one completed act — English present perfect, but BR uses the simples)

Você já comeu sushi?

Have you ever eaten sushi? (experience — still the simples in BR)

Ontem eu falei com o médico.

Yesterday I spoke with the doctor. (plain past)

So the English "I have done it" (once, already, ever) maps onto já fiz / fiz, never onto tenho feito. This is the single most important mapping on the page.

The mapping table

EnglishMeaningCorrect BR tenseExample
I have already finished.one completed actsimples (já + perfeito)Já terminei.
Have you ever been to Bahia?experience, once+simplesVocê já foi à Bahia?
I did it yesterday.plain pastsimplesFiz isso ontem.
I've been working a lot lately.repeated, ongoingcompostoTenho trabalhado muito.
She's been calling every day.recurring up to nowcompostoEla tem ligado todo dia.
I've lived here for ten years.duration still truepresent + faz/háMoro aqui faz dez anos.

That last row is a third escape hatch: for "I have done X for/since [time]" where the situation is still true, BR usually prefers the present tense with faz or moro aqui faz dez anos ("I've lived here for ten years"), not a perfect tense at all. See Há / Faz Constructions for the duration patterns.

Why the false friend is so dangerous

Because both languages use "have/ter + participle," the English speaker's instinct is to translate one-to-one. But the two perfects diverged centuries ago. English generalized its present perfect to mean "past action with present relevance," including single events. Portuguese restricted its composto to iterative or durative events. So when an English speaker says tenho feito o relatório meaning "I have done the report," a Brazilian hears "I have been doing the report (repeatedly, over a stretch of time) — and may still be at it." The completed, one-shot meaning is lost.

Tenho lido esse livro.

I've been reading this book (on and off, still ongoing). — NOT 'I have read this book.'

Já li esse livro.

I've read this book / I read it (finished, once).

The minimal pair makes the divergence concrete: tenho lido = ongoing habit; já li = done. If you mean "done," the composto is simply the wrong tense.

A quick decision procedure

  1. Is the English a single, completed action ("I have finished," "I did," "have you ever")? → simples (fiz, já fiz).
  2. Is it a repeated or continuing action up to now ("I've been doing," "lately," "these days")? → composto (tenho feito).
  3. Is it a duration still true now ("for X years," "since")? → present + faz/há (faço isso faz três anos).

When in doubt between 1 and 2, ask whether you could insert "lately" or "these days" in English without changing the meaning. If yes, it's the composto. If "lately" sounds wrong, it's the simples.

💡
A useful side-note for European Portuguese learners: this whole picture is fairly uniform across BR and EP for the composto's iterative meaning, but BR leans even harder on the simples for everyday completed actions. Where a Brazilian says simply "Já comi" ("I've already eaten"), the present-perfect-of-experience is almost never expressed with the composto in either variety — so the mapping "English experiential perfect → simples" is safe across the board.

Common Mistakes

❌ Tenho terminado o trabalho.

Incorrect if you mean 'I have finished the work' — this says 'I've been finishing it repeatedly.'

✅ Já terminei o trabalho.

I've already finished the work.

❌ Você tem ido à Bahia alguma vez?

Incorrect for 'Have you ever been to Bahia?' — the composto implies a repeated, ongoing habit.

✅ Você já foi à Bahia alguma vez?

Have you ever been to Bahia?

❌ Tenho morado aqui por dez anos.

Awkward — for a still-true duration, BR prefers the present with faz/há.

✅ Moro aqui faz dez anos.

I've lived here for ten years.

❌ Eu já tenho comido sushi.

Incorrect — experience ('I have eaten sushi') is the simples, not the composto.

✅ Eu já comi sushi.

I've eaten sushi (before).

❌ Estudo muito ultimamente.

Incomplete — 'lately' with a habit that's been building up wants the composto.

✅ Tenho estudado muito ultimamente.

I've been studying a lot lately.

Key Takeaways

  • tenho feito ≠ "I have done." The composto means "I have been (repeatedly/continuously) doing" up to now — it is a false friend.
  • Map English experiential / completed present perfect ("I have already done it," "have you ever") to the simples: já fiz, você já foi.
  • Reserve the composto for repeated or ongoing action up to the present, usually with ultimamente, todo dia, esses dias.
  • For "for/since [time]" still true now, prefer the present tense + faz/há, not a perfect.
  • The safe test: if English "lately" fits, use the composto; otherwise use the simples.

Now practice Portuguese

Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.

Start learning Portuguese

Related Topics

  • Translating English Present Perfect into BRB1English 'have/has + done' maps onto THREE different Brazilian structures — present + há, the simple preterite (+ já), and the perfeito composto. Here's how to choose.
  • Composto vs Perfeito: When BR Uses WhichB1A clean decision rule for choosing the compound perfect (tenho feito) versus the simple preterite (eu fiz) in Brazilian Portuguese.
  • Iterative/Continuous Meaning: 'Tem feito'B1Drilling the one thing the Brazilian present perfect actually means: an action repeated or continued from a recent past point right up to now.
  • Tense Selection ErrorsB1The systematic tense mistakes English speakers make in Brazilian Portuguese — preterite vs. imperfect, the false friend 'tenho feito', double future, and present-for-future-subjunctive.
  • False Friends with EnglishA2The Brazilian Portuguese words that look English but mean something else — pretender (intend), puxar (pull!), assistir (watch), livraria (bookstore), atualmente (currently).
  • Choosing Between Confusable Pairs: OverviewA2A map of the word choices Brazilian Portuguese forces on English speakers — where English uses one word (be, for, know, bring, say) and Portuguese splits it into two or three.