Lesson 25: Pretérito perfecto compuesto — "I have eaten", "Have you ever...?", "Today I've..."
How to work with this lesson
- Read the rule — see how he hablado is assembled (5 minutes, no more)
- Run the scale out loud — he, has, ha, hemos, habéis, han + one fixed participle. Drill to automatism.
- Drill the "alguna vez" matrix — "Have you ever…?" — "Yes, I already…" / "No, I never…"
- Read every example out loud. Without that, the rule stays on paper.
Knowing how to build he comido = 10%. Getting your mouth to fire off ¿Has visto esa película? — No, todavía no la he visto without a pause — that takes hundreds of reps.
Part 1: What this tense actually is
Good news for English speakers: this is almost exactly the English present perfect.
| English | Spanish |
|---|---|
| I have eaten. | He comido. |
| She has written the letter. | Ha escrito la carta. |
| Have you ever been to Madrid? | ¿Has estado alguna vez en Madrid? |
Same structure: to have in the present + past participle. Same uses: life experiences, recent past with present relevance, time periods that include now. The mapping is one-to-one — you mostly already know when to use it from English. Spanish has two ways to say "I did / I have done something":
| Tense | Example | When |
|---|---|---|
| Pretérito indefinido (lessons 21–22) | Ayer comí paella. | Closed window. It's done, the time frame is over. |
| Pretérito perfecto compuesto (this lesson) | Hoy he comido paella. | The time window is still open — today, this week, this year, life-so-far. |
The Spain rule (the central rule): if the action falls inside an open time window (today, this week, this year, "ever in life", "already", "not yet"), use perfecto compuesto. If the window is closed (yesterday, in 2020, three days ago, last Monday), use indefinido. Full marker list in Part 4.
Regional caveat: in Latin America the perfecto compuesto is barely used for "today I did X" — they say hoy comí paella. In Spain it's the norm: hoy he comido. We teach the Spain norm as the base — it's understood everywhere, and the LatAm pattern is just "use indefinido a bit more often". In Mexico, Argentina, Peru, you'll hear indefinido where a Spaniard says compuesto — that's dialect, not an error.
Part 2: How it's built — haber in the present + participle
The tense is compound (hence compuesto): an auxiliary verb haber in the present + the past participle of the main verb. Exactly the same machinery as English "I have + eaten".
Step 1: haber in the present — a pure helper, translate it as English "have"
| Person | haber |
|---|---|
| yo | he |
| tú | has |
| él / ella / usted | ha |
| nosotros / nosotras | hemos |
| vosotros / vosotras | habéis |
| ellos / ellas / ustedes | han |
Heads up: this haber is not "to have" in the sense of possession. "To have (something)" = tener. Here haber is a purely grammatical auxiliary, like English have in I have eaten — by itself it carries no meaning.
Step 2: The past participle — regulars
| Verb type | Participle ending | Example |
|---|---|---|
| -ar | -ado | hablar → hablado (spoken), trabajar → trabajado (worked) |
| -er | -ido | comer → comido (eaten), beber → bebido (drunk) |
| -ir | -ido | vivir → vivido (lived), salir → salido (gone out) |
That's literally it. Chop the infinitive ending, add -ado or -ido. Just like English -ed for regular verbs.
Step 3: Put them together
yo + he + hablado = he hablado ("I have spoken" / "I've spoken")
| Person | hablar | comer | vivir |
|---|---|---|---|
| yo / tú / él | he hablado / has hablado / ha hablado | he comido / has comido / ha comido | he vivido / has vivido / ha vivido |
| nos. / vos. / ellos | hemos hablado / habéis hablado / han hablado | hemos comido / habéis comido / han comido | hemos vivido / habéis vivido / han vivido |
Iron rule #1: haber and the participle cannot be separated by anything. Not by no, not by a pronoun, not by an adverb. Negation and pronouns sit before haber; adverbs go before haber or after the participle. ✅ No he comido nada. / Ya lo he visto. / Lo he visto ya. ❌ He no comido nada. / He lo visto. Unlike English ("I have already seen it"), Spanish never splits the unit.
Iron rule #2: the participle is INVARIANT in this tense. It always ends in -o, regardless of subject gender or number. (Watch out if you're thinking in French — Spanish does NOT agree here.) Ella ha hablado. (not hablada) / Las chicas han comido. (not comidas) / Los niños han vuelto. (not vueltos) The participle CAN agree by gender/number — but only as an adjective or in the passive (Lesson 41). In perfecto compuesto, it's frozen.
Part 3: Irregular participles — memorize the block
Not many, but very high-frequency. Learn them as a chunk.
| Infinitive | Participle | Infinitive | Participle | |
|---|---|---|---|---|
| abrir (to open) | abierto | morir (to die) | muerto | |
| cubrir (to cover) | cubierto | poner (to put) | puesto | |
| decir (to say) | dicho | resolver (to solve) | resuelto | |
| escribir (to write) | escrito | romper (to break) | roto | |
| hacer (to do/make) | hecho | satisfacer (to satisfy) | satisfecho | |
| ir (to go) | ido | ver (to see) | visto | |
| volver (to return) | vuelto |
Examples in context: He abierto la ventana. / ¿Qué has dicho? / He escrito una carta. / ¿Qué has hecho hoy? / ¿Dónde has puesto las llaves? / He roto el vaso. / ¿Has visto la película? / Mi padre ha vuelto a casa.
Derivatives are also irregular — same root, same participle: describir → descrito, descubrir → descubierto, deshacer → deshecho, componer → compuesto, devolver → devuelto, prever → previsto.
Memorize as a block: abierto, cubierto, dicho, escrito, hecho, ido, muerto, puesto, resuelto, roto, satisfecho, visto, vuelto — say it out loud five times. This investment pays back in L26 (había hecho), L39 (haya hecho), L41 (fue hecho). Same list, three more tenses.
Part 4: Time markers — the signal words
About 10 markers almost always pull perfecto compuesto with them, and they cover 80% of cases.
| Marker | English | Example |
|---|---|---|
| hoy | today | Hoy he trabajado mucho. |
| esta mañana / tarde / noche / semana | this morning / afternoon / evening / week | Esta semana he visto tres películas. |
| este mes / este año | this month / this year | Este año he viajado mucho. |
| ya | already | Ya he comido, gracias. |
| todavía no / aún no | not yet | Todavía no he terminado. |
| nunca / jamás | never | Nunca he estado en Japón. |
| alguna vez | ever (questions only) | ¿Has estado alguna vez en París? |
| recientemente / últimamente | recently / lately | Últimamente he dormido mal. |
| en mi vida | in my life (= never, emphatic) | En mi vida he visto algo así. |
ya / todavía pair: ¿Ya has comido? — Sí, ya he comido. / No, todavía no he comido. Ya = result is in place; todavía no = still expected.
alguna vez / nunca pair: alguna vez is for QUESTIONS only. Q: ¿Has visitado alguna vez Madrid? — Have you ever visited Madrid? Yes: Sí, ya lo he visitado. / Sí, lo he visitado dos veces. No: No, nunca he estado allí. / No, todavía no he estado.
Part 5: Compuesto vs indefinido — side by side
| Situation | Tense | Example |
|---|---|---|
| Today (still going) | compuesto | Hoy he desayunado tarde. |
| Yesterday | indefinido | Ayer desayuné tarde. |
| This week | compuesto | Esta semana he ido al gimnasio tres veces. |
| Last week | indefinido | La semana pasada fui al gimnasio dos veces. |
| Ever / in life (experience) | compuesto | ¿Has probado el sushi? |
| In 2015 (dated event) | indefinido | Probé el sushi en 2015. |
| Already done (result now) | compuesto | Ya he comprado el pan. |
| Done two hours ago | indefinido | Compré el pan hace dos horas. |
| Recently (no specific date) | compuesto | Recientemente he leído un libro genial. |
| A month ago | indefinido | Hace un mes leí un libro genial. |
The mental test: "Is the window still open or closed?" Open (hoy, esta semana, este año, alguna vez, en mi vida, recientemente) → compuesto. Closed (ayer, en 1990, hace tres días, el lunes pasado) → indefinido. In Mexico/Argentina/Peru you'll hear Hoy desayuné tarde — normal there. In Spain it's Hoy he desayunado tarde. Learn the Spain norm; you'll understand both.
Lesson vocabulary
- yaalready
- todavía / aúnstill / yet
- todavía no / aún nonot yet
- alguna vezever
- nunca / jamásnever / never (stronger)
- en mi vidain (my) life
- recientemente / últimamenterecently / lately
- esta semana / este mes / este añothis week / month / year
- hoy / esta mañana / esta tarde / esta nochetoday / this morning / afternoon / evening
- el viaje, viajar, visitartrip, to travel, to visit
- el país, la ciudad, el extranjerocountry, city, abroad
- la experiencia, probarexperience, to try/taste
- el avión, el tren, el barcoplane, train, ship
- el museo, la película, la noticiamuseum, film, piece of news
- el problema, el examenproblem, exam
- terminar / empezarto finish / to start
- perder / ganar / cambiarto lose, miss / to win, earn / to change
- montarto get on, to ride
| German | Translation | |
|---|---|---|
ya | already | |
todavía / aún | still / yet | |
todavía no / aún no | not yet | |
alguna vez | ever | |
nunca / jamás | never / never (stronger) | |
en mi vida | in (my) life | |
recientemente / últimamente | recently / lately | |
esta semana / este mes / este año | this week / month / year | |
hoy / esta mañana / esta tarde / esta noche | today / this morning / afternoon / evening | |
el viaje, viajar, visitar | trip, to travel, to visit | |
el país, la ciudad, el extranjero | country, city, abroad | |
la experiencia, probar | experience, to try/taste | |
el avión, el tren, el barco | plane, train, ship | |
el museo, la película, la noticia | museum, film, piece of news | |
el problema, el examen | problem, exam | |
terminar / empezar | to finish / to start | |
perder / ganar / cambiar | to lose, miss / to win, earn / to change | |
montar | to get on, to ride |
Full dictionary
3,250 entries
Read the task, type your answer in Spanish, and hit Check. Each answer is checked locally first; tricky cases ask Claude for a hint. Progress saves automatically.
🔊 ExercisesOpens the exercise answers in the external app — study with audio and word-by-word breakdown.Exercise 1. Form the participle
Write the past participle for each verb. Half are regular, half aren't.
Exercise 2. The "Have you ever…?" matrix — ask and answer yes/no
Template: ¿Has … alguna vez? — Sí, ya … / No, nunca …
Exercise 3. Put the verb into perfecto compuesto
Conjugate the verb in parentheses.
Exercise 4. Compuesto or indefinido? — choose and justify
Pick the right form. The window clue is in parentheses.
Exercise 5. Translate from English — experience and recent past
Exercise 6. Dialog — read both voices out loud
— ¡Hola! ¿Qué has hecho hoy? — Pues, esta mañana he trabajado en casa y luego he ido al gimnasio. ¿Y tú? — Yo todavía no he hecho nada importante. He desayunado y he leído un libro. — ¿Has visto las noticias? — No, aún no las he visto. ¿Ha pasado algo? — Nada grave. Oye, ¿alguna vez has estado en Granada? — No, nunca he estado allí. Pero siempre he querido ir. ¿Y tú? — Yo he estado dos veces. La Alhambra es impresionante. — Algún día iré. Te lo prometo.
Repeat the dialog 3 times, then try it from memory.
Open-ended drill — no automatic check. Say the answers aloud, then move on.
Need more practice? Claude will generate a fresh 10-prompt exercise from this lesson's vocab and theme.
Generated: 0 of 5
Listening texts
Three text variants per lesson. Open in glottos.com for synchronized audio playback.
Text AText for Lesson 25: What I've done today and this week🔊 Audio practice ↗
- Hoy me he levantado a las siete.
- He desayunado un café y una tostada.
- Esta mañana he trabajado mucho.
- He leído los correos y he escrito tres respuestas.
- A las once he tomado otro café.
- Mi colega ha llegado tarde.
- Hemos hablado un poco sobre el proyecto.
- A mediodía he comido en la oficina.
- He comido una ensalada y pollo.
- Esta tarde he tenido una reunión larga.
- Hemos terminado la reunión a las cinco.
- Después he ido al supermercado.
- He comprado pan, leche y fruta.
- Esta semana he ido al gimnasio tres veces.
- He corrido en la cinta media hora.
- Mi hermana ha llamado dos veces hoy.
- Todavía no la he llamado yo.
- Mis padres han vuelto del viaje esta mañana.
- Aún no he visto a mi madre.
- ¿Has visto las noticias hoy?
- Yo todavía no las he visto.
- Esta tarde he leído un capítulo del libro.
- He escuchado música mientras cocinaba.
- He preparado pasta para la cena.
- ¿Has hecho los deberes ya?
- Sí, ya los he hecho todos.
- Hoy ha hecho mucho calor.
- Esta semana ha llovido dos días.
- Este mes he gastado mucho dinero.
- ¡Qué día más largo he tenido hoy!
Text BText for Lesson 25: What I've done in my life — experiences and impressions🔊 Audio practice ↗
- He vivido en tres países diferentes.
- He estudiado dos lenguas extranjeras.
- Nunca he aprendido chino, pero me gustaría.
- He visitado muchos museos en Europa.
- Todavía no he estado en Asia.
- Mi hermano ha viajado por toda América Latina.
- ¿Has subido alguna vez a una montaña alta?
- Sí, he subido al Mont Blanc dos veces.
- Yo nunca he montado a caballo.
- Mi amiga ha hecho paracaidismo en Nueva Zelanda.
- He probado comida muy rara en mis viajes.
- He comido insectos en Tailandia.
- Jamás he probado la carne de cocodrilo.
- Mis padres han vivido toda su vida en el mismo pueblo.
- Nosotros hemos cambiado de ciudad cinco veces.
- ¿Has escrito alguna vez un libro?
- He escrito poemas, pero nunca un libro entero.
- He leído más de quinientos libros en mi vida.
- Todavía no he aprendido a nadar bien.
- Aún no he sacado el carné de conducir.
- Mi abuelo ha vivido más de noventa años.
- Ya he visto todas las películas de ese director.
- Nunca he ganado la lotería, claro.
- Una vez he perdido la cartera en el metro.
- He roto dos veces el mismo brazo.
- ¿Has visto alguna vez una aurora boreal?
- Sí, la he visto en Islandia. Fue increíble.
- En mi vida he visto algo más bonito que el mar al amanecer.
- He hecho muchas cosas, pero todavía me quedan muchas por hacer.
- La vida es corta, y hay que vivirla.
Text CText for Lesson 25: Dialog — "What's new with you?"🔊 Audio practice ↗
- — ¡Hola, Carmen! ¿Qué tal? ¿Cómo has estado?
- — ¡Hola, Pablo! He estado muy ocupada esta semana.
- — ¿Qué has hecho?
- — He empezado un curso nuevo de fotografía.
- — ¡Qué bien! ¿Y cuántas clases has tenido ya?
- — He tenido tres. El profesor es excelente.
- — Yo también he hecho cosas nuevas últimamente.
- — ¿Ah, sí? ¿Qué has hecho tú?
- — He cambiado de trabajo. Empecé el lunes.
- — ¡Enhorabuena! ¿Y cómo te ha ido la primera semana?
- — Muy bien. Mis compañeros han sido muy amables.
- — Me alegro mucho. ¿Has visto a Lucía recientemente?
- — No, todavía no la he visto este mes.
- — Ella ha vuelto de Argentina hace unos días.
- — ¿En serio? No lo sabía. ¿Le ha gustado el viaje?
- — Sí, mucho. Ha sacado mil fotos.
- — Tengo que llamarla. Hace tiempo que no hablamos.
- — Oye, ¿has comido ya?
- — No, todavía no he comido. ¿Quieres ir a algún sitio?
- — Sí. ¿Has probado el restaurante nuevo de la esquina?
- — No, aún no he ido. ¿Es bueno?
- — Nosotros hemos ido dos veces y nos ha encantado.
- — Pues vamos. Hoy no he desayunado y tengo hambre.
- — ¿No has desayunado? ¿Por qué?
- — Me he levantado muy tarde. He dormido casi diez horas.
- — Esta semana has trabajado demasiado, claro.
- — Sí, y aún no he terminado todo lo que tenía que hacer.
- — Bueno, hoy descansas. Te lo has ganado.
- — Gracias, Pablo. Has sido un buen amigo.
- — ¡Siempre! Vamos, te invito yo.
Audio playback is handled by glottos.com — opens in a new tab.
No scales or matrices in this lesson yet — they start from Lesson 3. Use the listening texts above for speaking practice.
PRETÉRITO PERFECTO COMPUESTO = haber (present) + participio
= English "have/has + past participle"
I have eaten = He comido
HABER: he has ha / hemos habéis han
PARTICIPIO regular:
-ar → -ado (hablado)
-er → -ido (comido)
-ir → -ido (vivido)
PARTICIPIO irregular (the block):
abierto, cubierto, dicho, escrito, hecho, ido,
muerto, puesto, resuelto, roto, satisfecho, visto, vuelto
THE IRON RULES:
• haber + participio CANNOT be split
✅ No he comido nada. Ya lo he visto.
❌ He no comido. / He lo visto.
• Participle is INVARIANT — always -o
Ella ha hablado. Las chicas han comido.
WHEN TO USE (Spain norm):
Window OPEN → COMPUESTO
hoy, esta semana, este mes, este año
ya, todavía no, aún no, recientemente, últimamente
alguna vez, nunca, jamás, en mi vida
Window CLOSED → INDEFINIDO (L21–22)
ayer, anoche, la semana pasada
en 2015, hace dos días, el lunes pasado
LatAm note: "Hoy comí" is the common LatAm form.
"Hoy he comido" is the Spain norm — we learn this as the base.
THE "alguna vez" MATRIX:
¿Has + participio + alguna vez? = "Have you ever…?"
— Sí, ya lo he hecho. / Sí, lo he hecho dos veces.
— No, nunca lo he hecho. / No, todavía no.
Next up: Lesson 26 — Pretérito pluscuamperfecto (había hablado). The past-before-the-past: an action that happened before another past action ("I had already eaten when she arrived"). Exact same construction (haber + participle), only now haber is in the imperfect: había, habías, había, habíamos, habíais, habían. Every participle from this lesson comes right back — drill them hard now and L26 is essentially free.
Next up: Lesson 26 — Pretérito pluscuamperfecto (había hablado). The past-before-the-past: an action that happened before another past action ("I had already eaten when she arrived"). Exact same construction (haber + participle), only now haber is in the imperfect: había, habías, había, habíamos, habíais, habían. Every participle from this lesson comes right back — drill them hard now and L26 is essentially free.