The Spanish present perfect is formed with the present tense of haber (he, has, ha, hemos, habéis, han) plus a past participle (-ado / -ido): he comido, has visto, hemos viajado. Use it for life experiences, 'ever' and 'never', and recent actions that still matter now, like English 'I have done'.
haber (he, has, ha…) + participle (-ado / -ido) = have done- haber + past participle
- Talk about life experiences
- Regular & irregular participles
"Have you ever been to Mexico?" "I've never tried ceviche." "We've already eaten." Every one of those sentences uses the Spanish present perfect — and the good news is that it works almost exactly like the English one. This guide covers the formula haber + participle, the nine irregular participles you can't avoid, the "have you ever" questions, and when Spain and Latin America use it differently.
In 40 years of teaching, I've found English speakers learn this tense faster than any other Spanish past tense, because you already own the concept. You need the little verb haber, a short list of participles, and one honest conversation about the preterite.
The big pictureWhen to use the Spanish present perfect
The present perfect (el pretérito perfecto) talks about the past from the point of view of now. The action is finished, but it still touches the present — as an experience you carry, a result you can see, or a time period that hasn't closed yet. Use it for:
- Life experiences — He vivido en tres países. (I've lived in three countries.) When it happened doesn't matter; that it happened does.
- "Ever" and "never" — ¿Has probado el mole? (Have you ever tried mole?) Nunca he visto la nieve. (I've never seen snow.)
- Recent actions with a present result — He perdido las llaves. (I've lost my keys — and I still don't have them.)
- Unfinished time periods — Esta semana he trabajado mucho. (This week I've worked a lot.) The week isn't over yet.
- "Already" and "still not" — Ya hemos comido. (We've already eaten.) Todavía no ha llegado. (He still hasn't arrived.)
My test: if you can add "so far" or "up to now" to the English sentence and it still makes sense, you're in present perfect territory. "I've read three books (so far this month)."
The formulaHow to form the present perfect: haber + past participle
Two pieces, always in this order: the present tense of haber (the helping verb "to have") and the past participle of the main verb. Haber is irregular but tiny:
| Subject | HABER — Present | + participle |
|---|---|---|
| yo | he | He terminado. — I have finished. |
| tú | has | ¿Has comido? — Have you eaten? |
| él / ella / usted | ha | Ha llegado tarde. — She has arrived late. |
| nosotros / nosotras | hemos | Hemos viajado mucho. — We have traveled a lot. |
| vosotros / vosotras | habéis | ¿Habéis dormido bien? — Did you sleep well? (Spain) |
| ellos / ellas / ustedes | han | Han vendido la casa. — They have sold the house. |
The h is silent, so he sounds like "eh" and ha like "ah." Don't confuse ha (he/she has) with hay (there is) — different words, different jobs.
The regular participle is easy: drop the infinitive ending and add -ado for -ar verbs, -ido for -er and -ir verbs. hablar → hablado, comer → comido, vivir → vivido. A few -er/-ir verbs whose stem ends in a vowel take a written accent to keep the syllables apart: leer → leído, oír → oído, traer → traído, creer → creído.
Three rules that never bend. One: nothing goes between haber and the participle — siempre he comido, never he siempre comido. Two: the participle never changes for gender or number in this tense — ella ha llegado, ellas han llegado, always -o. Three: object pronouns go before haber — lo he visto (I've seen it), me he levantado (I've gotten up).
Irregular past participles
Nine verbs have irregular participles — and conveniently, they're among the most common verbs in the language, so you'll hear them constantly:
| Verb | Participle | Example |
|---|---|---|
| hacer (to do / make) | hecho | ¿Qué has hecho hoy? — What have you done today? |
| decir (to say / tell) | dicho | Ya te lo he dicho. — I've already told you. |
| ver (to see) | visto | No he visto esa película. — I haven't seen that movie. |
| escribir (to write) | escrito | Hemos escrito un correo. — We've written an email. |
| poner (to put) | puesto | ¿Dónde has puesto las llaves? — Where have you put the keys? |
| volver (to return) | vuelto | Han vuelto de Colombia. — They've come back from Colombia. |
| abrir (to open) | abierto | Ha abierto una tienda. — She has opened a shop. |
| romper (to break) | roto | Me he roto el brazo. — I've broken my arm. |
| morir (to die) | muerto | Ha muerto el actor. — The actor has died. |
Bonus: compounds inherit the irregularity. deshacer → deshecho, describir → descrito, devolver → devuelto, descubrir → descubierto. Learn nine, get twenty.
The conversation starter"Have you ever…?": alguna vez, nunca, ya, todavía no
The present perfect is the tense of getting to know people. Four little words carry the whole conversation:
- alguna vez (ever) — ¿Has estado alguna vez en Argentina? or ¿Alguna vez has estado en Argentina? (Have you ever been to Argentina?) Both word orders are natural.
- nunca (never) — Nunca he comido insectos. (I've never eaten insects.) You can also say No he comido insectos nunca — Spanish is happy with the double negative.
- ya (already) — Ya he reservado el hotel. (I've already booked the hotel.)
- todavía no (not yet / still not) — Todavía no he terminado. (I haven't finished yet.)
Memorize ¿Alguna vez has…? as a single chunk and plug in participles: ¿Alguna vez has visto…? ¿Alguna vez has estado en…? It's the best icebreaker in the language, and it drills haber and the participles at the same time. My students who use it on their first trip come back with friends and with the tense.
In the wildThe present perfect in real Spanish
Five sentences from travel, work and family. Read the participle first, then the form of haber, and say the whole thing aloud.
From the classroomCommon mistakes English speakers make with the present perfect
These five cover almost everything I correct in this tense. Most come from English being close enough that you stop paying attention.
- Using tener as the helping verb. Tengo comido is the most common error, straight from English "I have eaten." The auxiliary is always haber: he comido. Tener is for possession only — see the tener conjugation guide if the two still feel interchangeable.
- Regularizing the irregular participles. He escribido, he rompido, he ponido, he hacido. Learn the nine irregulars in the table above as vocabulary, not as grammar.
- Splitting haber and the participle. English says "I have already eaten," so students say he ya comido. Spanish keeps the two words together: ya he comido. Adverbs go before haber or after the participle — never in between.
- Making the participle agree. Ella ha llegada and ellos han comidos look logical but are wrong. With haber, the participle is frozen in -o. It only agrees as an adjective: la puerta está abierta.
- Using it with a finished time marker. Ayer he comido paella is wrong in Latin America and in Spain. Yesterday is closed: ayer comí paella. If the sentence contains ayer, el año pasado or a date, switch to the preterite.
The big decisionPresent perfect vs preterite: Spain and Latin America
Here's the honest conversation: in the present perfect, Spain and Latin America genuinely differ.
| Situation | Spain | Latin America |
|---|---|---|
| Today / this morning | Hoy he desayunado tarde. | Hoy desayuné tarde. |
| Just now, recent news | Ha llamado tu madre. | Llamó tu madre. |
| Life experience (ever / never) | Nunca he estado en Cuba. | Nunca he estado en Cuba. |
| Yesterday, last week, a date | Ayer comí paella. | Ayer comí paella. |
Both varieties agree on the two extremes; they differ on "today" and "just now." Neither is wrong — they're two dialects of the same rule.
In Spain, anything inside a period that's still open — today, this week, this year — takes the present perfect: Esta mañana he ido al médico. In most of Latin America, speakers use the preterite for anything completed, even five minutes ago: Esta mañana fui al médico. The present perfect survives there for life experiences (nunca he estado…), for todavía no, and for actions that continue into the present (siempre hemos vivido aquí).
My advice: use the present perfect for ever, never, already, still not, and open periods, and the Spanish preterite tense for anything with a closed time marker — ayer, anoche, la semana pasada, en 2019. You'll be correct on both sides of the Atlantic. And once he hecho is automatic, the Spanish past perfect costs almost nothing: swap he for había. Both tenses sit alongside the preterite and imperfect in my guide to all the Spanish past tenses.
PracticeQuick quiz: spanish present perfect
Six questions from the lesson. Answer in your head, then open to check.


