This is a uniquely peninsular grammar point. If you learned Spanish from a Latin American teacher, an Argentine telenovela, or a Mexican textbook, you almost certainly underuse the present perfect — because in most of Latin America, the preterite covers everything. But in Spain, the present perfect (he comido, he ido, he visto) is the natural tense for anything that happened inside the current time frame: today, this week, this month, this year, ever in my life. Switching to the preterite when speaking with Spaniards isn't wrong, exactly — they'll understand you — but it makes you sound either Latin American or like a learner who hasn't yet picked up the rule.
This page focuses on the specific transfer error English speakers and Latin-American-trained learners make in Spain, the time markers that signal each tense, and the important counter-trap: not all of Spain follows this rule. Northern regions — Galicia, Asturias, León, parts of the Canaries — prefer the preterite even within the current frame. The "Spain prefers the perfect" rule is really a Madrid-and-most-of-Spain rule, not a universal Spain rule.
The core distinction in one sentence
Use the perfect (he comido) for actions inside the current time frame; use the preterite (comí) for actions outside it.
The "current time frame" is whatever block of time the speaker considers ongoing: today (hoy), this week (esta semana), this month (este mes), this year (este año), my life so far (en mi vida). If the action falls inside one of those frames, peninsular Spanish defaults to the present perfect. If the action is detached from now — yesterday, last week, in 2019, three years ago — peninsular Spanish uses the preterite.
Hoy he ido al gimnasio antes del trabajo.
Today I went to the gym before work. (peninsular) — 'today' is still going → he ido.
Ayer fui al gimnasio antes del trabajo.
Yesterday I went to the gym before work. — 'yesterday' is finished → fui.
When to use the present perfect (he + participle) in Spain
The present perfect in Spain extends much further than its English cousin. English I have eaten tends to imply and the consequences continue / and I'm not specifying when. Spanish he comido simply means I ate (and the time frame I ate in is still open).
1. This morning / this afternoon / tonight (so far)
Esta mañana he desayunado tarde y he llegado tarde al trabajo.
This morning I had a late breakfast and arrived late at work. (peninsular)
Esta tarde he comprado el regalo de tu madre.
This afternoon I bought your mother's present. (peninsular)
The key is whether the period named is still considered current. Esta mañana (this morning) is current if it's still morning, or even if it's afternoon but the morning's events still feel like part of "today." Esta tarde is current as long as the afternoon hasn't fully ended.
2. Today (hoy)
Hoy he tenido un día horroroso, no he parado.
I've had a horrible day today, I haven't stopped. (peninsular)
Hoy hemos comido en casa de mis suegros.
Today we had lunch at my parents-in-law's. (peninsular)
Hoy is the prototypical perfect-trigger. A Spaniard recounting their day from breakfast through dinner will use the present perfect for every event in it.
3. This week / this month / this year
Esta semana he ido al cine dos veces, no me lo puedo creer.
This week I've been to the cinema twice, I can't believe it. (peninsular)
Este año hemos viajado mucho menos por el trabajo.
This year we've travelled much less because of work. (peninsular)
The frame is still open — the week isn't over, the year isn't over — so the perfect is natural.
4. Ever in my life / never (life experience)
¿Has estado alguna vez en Asturias? Es preciosa.
Have you ever been to Asturias? It's beautiful. (peninsular)
Nunca he probado el cordero asado, ¿está bueno?
I've never tried roast lamb, is it good?
The "life-experience" use lines up cleanly with English. Have you ever / I've never maps to the present perfect in both languages.
5. Just now (acabar de is the standard, but the perfect also works)
Lo he visto hace un momento en el pasillo.
I saw him a moment ago in the corridor. (peninsular)
¿Te ha llamado María? Acabo de hablar con ella.
Has María called you? I've just been talking to her.
For very recent past — minutes ago, just now — peninsular Spanish reaches for the perfect. The Latin American equivalent would often be the preterite (lo vi hace un momento).
When to use the preterite in Spain
The preterite is for actions outside the current time frame — detached from the present, fully closed.
1. Yesterday and earlier
Ayer terminé la novela de Carmen Laforet, me encantó.
Yesterday I finished the Carmen Laforet novel, I loved it.
Anoche cenamos en un japonés cerca de Sol.
Last night we had dinner at a Japanese place near Sol.
Ayer, anoche, anteayer — fully outside today's frame, so the preterite is automatic.
2. Last week, last month, last year
La semana pasada estuvimos en Valencia por las Fallas.
Last week we were in Valencia for Las Fallas.
El año pasado vendimos el coche y compramos uno eléctrico.
Last year we sold the car and bought an electric one.
Pasado/pasada (last) is the explicit signal that the frame has closed. Preterite.
3. Specific years and dates
Me jubilé en 2019, justo antes de la pandemia.
I retired in 2019, just before the pandemic.
El 11 de marzo de 2004 cambió todo en este país.
On the 11th of March 2004 everything changed in this country.
A specific year or date in the past anchors the event firmly outside now. Preterite.
4. Hace + time period (ago)
Conocí a mi pareja hace ocho años en un concurso de cocina.
I met my partner eight years ago at a cooking contest.
Hace dos meses dejé de fumar y todavía me cuesta.
I quit smoking two months ago and I still find it hard.
Hace + period of time in this construction always pulls the preterite. He dejado de fumar hace dos meses is something a Latin American might say comfortably; in Spain it sounds wrong because the hace dos meses anchors the event outside the current frame.
The minimal-pair test
Once you've internalized the rule, you can predict which tense a Spaniard will use just from the time marker.
Esta semana he visto tres películas.
This week I've watched three films. (peninsular) — esta semana is open → perfect.
La semana pasada vi tres películas.
Last week I watched three films. — la semana pasada is closed → preterite.
Hoy he comido tarde, sobre las cuatro.
Today I ate late, around four. (peninsular) — hoy is still going → perfect.
Ayer comí tarde, sobre las cuatro.
Yesterday I ate late, around four. — ayer is closed → preterite.
If you read each pair and feel the time-frame shift, you have the rule.
The Latin American comparison
For learners coming from Latin American Spanish, the contrast is sharp. Latin American Spanish (especially Mexican, Argentine, Chilean) prefers the preterite for both cases above. A Mexican would naturally say hoy comí tarde and esta semana vi tres películas, using the preterite throughout. In Spain, those sentences sound either non-native or specifically Latin-American.
| English | Peninsular Spanish | Latin American Spanish |
|---|---|---|
| Today I went to the gym. | Hoy he ido al gimnasio. | Hoy fui al gimnasio. |
| This week we've travelled. | Esta semana hemos viajado. | Esta semana viajamos. |
| Have you eaten yet? | ¿Has comido ya? | ¿Ya comiste? |
| I've never been to Cuba. | Nunca he estado en Cuba. | Nunca estuve / Nunca he estado en Cuba. |
Note that the life-experience use (nunca he estado en Cuba) is the one case where the perfect is also acceptable across most of Latin America. But for today / this week / this month events, Latin America strongly prefers the preterite.
The counter-trap: northern Spain breaks the rule
Just when you've internalized "Spain = present perfect for the current frame," along comes the regional twist. In Galicia, Asturias, León, and parts of the Canary Islands, speakers prefer the preterite even within the current frame — much like in Latin America.
Hoy fui al mercado y compré pescado. (Galicia / Asturias)
Today I went to the market and bought fish. — regional preterite within the current frame.
Hoy he ido al mercado y he comprado pescado. (Madrid / most of Spain)
Today I went to the market and bought fish. — standard peninsular perfect.
In Galicia, this is partly the influence of Galician (gallego), which lacks a compound perfect tense and uses the simple past for everything. In Asturias and León the pattern is similar. Hearing hoy fui from a Madrileño would sound odd; hearing it from an Asturian is completely normal. As a learner you should default to the present perfect (it's the wider rule), but don't be confused when you hear the preterite in those regions.
Common Mistakes
❌ Hoy fui al gimnasio.
In Madrid/standard peninsular, sounds Latin-American or learner-flat. Hoy is still going → perfect.
✅ Hoy he ido al gimnasio.
Today I went to the gym. — peninsular default: hoy + perfect.
❌ Esta semana viajé a Sevilla.
Esta semana is still open. Using the preterite closes it artificially.
✅ Esta semana he viajado a Sevilla.
This week I travelled to Seville. — current-week event → perfect.
❌ He ido a París en 2019.
En 2019 anchors the event outside the current frame. The perfect clashes with the closed time marker.
✅ Fui a París en 2019.
I went to Paris in 2019. — closed date → preterite.
❌ He dejado de fumar hace tres meses.
Hace tres meses pulls the event into a closed past frame. The perfect doesn't fit.
✅ Dejé de fumar hace tres meses.
I quit smoking three months ago. — hace + period → preterite.
❌ ¿Ya comiste? (in Madrid)
Latin-American-flavoured; sounds non-peninsular. The standard peninsular form uses the perfect.
✅ ¿Has comido ya? (peninsular)
Have you eaten yet? — peninsular default for very recent or current-frame events.
❌ Nunca estuve en Italia, quiero ir algún día.
Acceptable but unusual in Spain. The peninsular default for life experience is the perfect.
✅ Nunca he estado en Italia, quiero ir algún día.
I've never been to Italy, I want to go someday. — life experience → perfect.
Watch out for these additional gotchas
- "Today" can become "yesterday" in peninsular usage. If it's 2am and you're talking about events from earlier the same day, Spaniards may still use the perfect: esta noche he salido con Marta. But once you've slept and woken up, those events shift to anoche salí con Marta — preterite, because last night is now closed. The frame moves with sleep, not with the calendar.
- Tener que + perfect. Obligations completed within the current frame take the perfect: hoy he tenido que ir al banco (today I had to go to the bank). Outside the current frame: ayer tuve que ir al banco.
- The compound past is one verbal unit. Don't drop the he/has/ha/hemos/habéis/han even with pronouns: me he duchado, NOT me duchado; lo he visto, NOT lo visto. The auxiliary haber and the participle are inseparable, and pronouns always go before haber.
- The past participle never agrees in this construction. La casa que hemos comprado (the house we bought) — comprado stays masculine singular even though la casa is feminine. This differs from French and Italian. In Spanish, past participles only agree when they function as adjectives (la casa está comprada — but that's estar
- participle, a different construction).
- News presenters and journalists overuse the perfect. On Spanish news, you'll hear el presidente ha declarado..., los manifestantes han llegado..., el incendio ha destruido... even for events from hours or days ago. This is a stylistic choice — the perfect makes news feel current and ongoing. Don't take it as evidence that the time-frame rule has broken down; in everyday speech the rule still holds.
- Spanish present perfect is NOT English present perfect. English I have eaten implies and that's why I'm not hungry now (current relevance). Spanish he comido simply means I ate, within the current time frame. The two tenses look identical but cover different territory. Have you eaten yet? (English: am I going to feed you?) and ¿has comido ya? (peninsular: did the action happen earlier today?) overlap in many cases but not all.
Key Takeaways
- Peninsular Spanish uses the present perfect for actions inside the current time frame (hoy, esta mañana, esta semana, este año, en mi vida) and the preterite for actions outside it (ayer, anoche, la semana pasada, en 2019, hace dos meses).
- The time marker does most of the work. Este/esta + period triggers the perfect; pasado/pasada
- period, hace
- period, and specific years/dates trigger the preterite.
- period, hace
- Latin American Spanish prefers the preterite for both cases. If you learned Spanish there, you'll under-use the perfect when you come to Spain — switch your default.
- Life experience (nunca he estado, he visto, ¿has probado?) uses the perfect across all of Spain.
- Counter-trap: northern Spain (Galicia, Asturias, León, parts of the Canaries) prefers the preterite even within the current frame, like in Latin America. Don't be confused when locals there say hoy fui.
- The auxiliary and the participle are inseparable. Pronouns go before haber: me he duchado, lo he visto, se lo he dicho.
- Newscaster style overuses the perfect for stylistic currency — don't mistake that for the everyday rule.
For deeper coverage including stylistic uses, the hodiernal tradition, and full conjugation, see the preterite vs present perfect choosing guide and the peninsular hodiernal-use page.
Now practice Spanish
Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.
Start learning Spanish→Related Topics
- Cómo elegir entre pretérito y pretérito perfectoA2 — Peninsular Spanish's defining past-tense choice. He comido for actions inside the current time frame (hoy, esta semana, este año, en mi vida); comí for actions outside it (ayer, la semana pasada, hace dos años). Time markers do most of the work. Plus the peninsular vs Latin American contrast and the northern Spain counter-trap.
- Pretérito perfecto hodiernal en EspañaA2 — Why peninsular Spanish forces the present perfect (he comido) for any event that happened today — and often this week, this month, or this year — where Latin America would use the simple preterite.
- Usos generales del pretérito perfectoA2 — The four main jobs of the Spanish present perfect — today's events, life experiences, recent unspecified past, and ongoing situations with ya/todavía/nunca — and why peninsular Spanish leans on this tense far more than English or Latin-American Spanish.
- Pretérito perfecto vs pretérito indefinidoA2 — The clean decision rule for choosing between he comido and comí in peninsular Spanish: current frame takes the present perfect, closed frame takes the preterite — with ten minimal pairs that drill the contrast.
- Variación regional del pretérito perfectoB2 — A map of how Spanish dialects use the present perfect — from Spain's strong hodiernal pattern to Río de la Plata's near-total preference for the preterite, with Andean evidential nuance and the Galician/Asturian preterite drift inside Spain itself.
- Errores: pretérito vs imperfectoB1 — English collapses two distinct past tenses into one form (I went, I was going). Spanish forces a choice every single time. The preterite tells you WHAT happened; the imperfect tells you WHAT WAS GOING ON. The full map of the choices, plus the verbs whose meaning flips between them (conocí vs conocía).