Este año he viajado mucho, pero el año pasado no viajé nada.This year I've traveled a lot, but last year I didn't travel at all.
Both he viajado and viajé are past tenses, but they answer a different question: is the time period you're talking about still open, or already closed? The present perfect (he viajado) keeps the window open; the preterite (viajé) shuts it.
Quick shortcut: time period still going (hoy, esta semana, este año) or effect still felt now → present perfect. Time period closed (ayer, la semana pasada, en 2019) → preterite. In much of Latin America, the preterite also covers same-day events that Spain would put in the present perfect.
The core contrast: is the time period still open?
Spanish present perfect and preterite both describe a completed action — the difference isn't whether the action itself finished, it's whether the time frame you're placing it in has finished.
- He trabajado hoy. (I've worked today.) — hoy isn't over yet.
- Trabajé ayer. (I worked yesterday.) — ayer is a closed, finished day.
The same logic extends to longer stretches: esta semana, este mes, este año are all still running, so they pair naturally with the present perfect; la semana pasada, el mes pasado, el año pasado, en 2019 are closed, so they call for the preterite.
| Present perfect (open period) | Preterite (closed period) |
|---|---|
| hoy | ayer |
| esta semana | la semana pasada |
| este mes | el mes pasado |
| este año | el año pasado |
| — | en 2019, en marzo, hace tres años |
Life experience, with no closed time frame
When you're talking about whether something has ever happened in your life — with no specific "when" attached — the present perfect, using words like alguna vez (ever), ya (already) and todavía no / nunca (not yet / never), is the default choice in Spain and common across Latin America too, though many Latin American varieties also use the preterite here just as naturally (¿Fuiste alguna vez a Portugal? alongside ¿Has ido alguna vez a Portugal?):
- ¿Has estado alguna vez en Japón? (Have you ever been to Japan?)
- Ya he visto esa película. (I've already seen that movie.)
- Todavía no he leído el libro. (I haven't read the book yet.)
The moment you attach a specific "when" to the same event, the sentence usually switches to the preterite, because you've now placed it in a closed moment rather than leaving it open as an experience:
- Fui a Japón en 2018. (I went to Japan in 2018.)
- Vi esa película el sábado. (I saw that movie on Saturday.)
An event with a result still felt now
A recent event can also take the present perfect simply because its effect is still relevant at the moment of speaking, even without an hoy-type time word attached to it:
- Ha llegado el paquete. (The package has arrived — and, the implication goes, it's presumably still here.)
- Se ha roto el cristal. (The glass has broken — it's still broken now.)
Compare this with a plain narration of the same kind of event, with nothing pointing at its present-moment relevance:
- El paquete llegó el jueves. (The package arrived on Thursday.)
The regional split
Spain and much of Latin America draw the open/closed-period line in a genuinely different place, and both patterns are correct Spanish — this is a live regional preference, not an error in either direction.
In Spain, the present perfect is the everyday choice for same-day events, even ones already fully finished by the time you mention them:
- Hoy he comido paella. (Today I ate/have eaten paella.) — natural in Spain, even hours after lunch.
In much of Latin America, the preterite covers the same idea, and the present perfect is reserved more narrowly for the "life experience" and "still-relevant-result" uses above:
- Hoy comí paella. (Today I ate paella.) — the everyday choice across most of Latin America.
Some regional varieties, notably parts of the Andean region, extend the present perfect even further than Spain does, using it for events clearly outside the current day. Because of this spread, there's no single "correct" line between the two tenses across the whole Spanish-speaking world — a learner's safest bet is to notice which pattern the Spanish speakers around them actually use, rather than expecting one universal rule.
Common mistakes
- ❌ He trabajado el año pasado. → ✅ Trabajé el año pasado. (el año pasado is a closed time period, so it calls for the preterite even though the sentence is about work generally)
- ❌ Ayer he visto a Marta. → ✅ Ayer vi a Marta. (a specific closed-day marker like ayer pairs with the preterite in standard usage — even though the present perfect is common for same-day events, ayer itself is never "today")
- ❌ Fui a Portugal alguna vez. → ✅ He ido a Portugal alguna vez. (in Spain, an experience statement with no specific "when," using alguna vez, normally takes the present perfect; many Latin American varieties accept the preterite here too, following that region's general preference)
- ❌ Habí comido antes de salir. → ✅ Había comido antes de salir. (that's a different tense, the pretérito pluscuamperfecto — don't confuse its había with the present perfect's he/has/ha)
Quick check
Choose the present perfect or the preterite for each sentence.
- Son las diez de la mañana. Esta mañana (yo) ___ (desayunar) muy tarde.
- El mes pasado (nosotros) ___ (visitar) a mis abuelos.
- ¿___ (tú, probar) alguna vez el ceviche?
- En 2020, ella ___ (empezar) a estudiar español.
- Todavía no ___ (ellos, terminar) el informe.
Show answers
- Son las diez de la mañana. Esta mañana (yo) he desayunado muy tarde. (the morning isn't over yet — later in the day, desayuné would be just as natural, especially in Latin America) 2. El mes pasado (nosotros) visitamos a mis abuelos. 3. ¿Has probado alguna vez el ceviche? 4. En 2020, ella empezó a estudiar español. 5. Todavía no han terminado el informe.
Learn faster with GrammarMama
This article covers one topic — here's how GrammarMama helps you turn it into lasting progress:
-
Know your level — A quick placement test finds your CEFR level, so every exercise fits you. Find your level →
-
Follow a clear path — Practise every topic in the right order, from A1 all the way to C2. See the full path →
-
Set your own goal — Tell us what you're learning for, and exercises follow your interests. Set a goal →
-
Track your mistakes — See the patterns behind what trips you up, and fix them for good. Review your mistakes →
-
Build your vocabulary — Words from your exercises are saved and reviewed with spaced repetition. Open your vocabulary →
-
Practise speaking — Answer exercises out loud instead of typing, whenever you like. Try speech practice →
-
Train your pronunciation — Get instant, word-by-word feedback on how you sound. Train your pronunciation →
-
Practise a little every day — Short daily exercises, matched to your level, keep the language fresh. Start practising →
Key takeaways
- The choice isn't about whether the action itself is finished — it's about whether the time period you're placing it in is still open (present perfect) or already closed (preterite).
- Hoy, esta semana, este mes, este año pair with the present perfect; ayer, la semana pasada, en 2019 pair with the preterite.
- Life experiences with no specific "when" (alguna vez, ya, todavía no, nunca) normally take the present perfect; attaching a specific date or day usually switches to the preterite.
- A recent event can also take the present perfect purely because its result is still felt now, even without an hoy-type time word.
- Spain leans on the present perfect for same-day events far more than most of Latin America does — both patterns are standard, correct Spanish; there's no single universal line between the two tenses.