Tell life stories and recent news with the right past tense — out loud, in conversation.
Use the present perfect — haber (he/has/ha/hemos/han) + past participle — for life experiences and time frames that are still open: he visitado México tres veces, este año he aprendido mucho. Use the preterite for anything anchored to a closed past time: ayer vi una película, en 2019 me mudé a Lima. The time markers make the choice for you: ya, todavía no, nunca, alguna vez point to the perfect; ayer, anoche, la semana pasada demand the preterite. And a Latin American secret: in everyday speech from Mexico City to Buenos Aires, the preterite wins most ties — ya comí is more common than he comido.
Below: the phrases both tenses build, the slip-ups that give learners away, and a way to practise the switch out loud in a real exchange — no drills, no fill-in-the-blanks.
Say this
Regional Spanish
Textbooks teach one word. Locals use several — pick your region's and stay consistent.
Watch out
The part no drill site can do
Carla
Your grammar teacher for this pack
No flashcards here, nothing to fill in. In the Been There lessons you swap real stories with Carla, and she keeps steering you across the tense line: ¿Alguna vez has viajado sola? — you answer with the perfect, then she follows up about one specific trip and you switch to the preterite mid-sentence: ¿Has probado ese restaurante? — Sí, fui la semana pasada. Then she rapid-fires time markers — hoy, este mes, ayer, anoche — and you build one spoken sentence per cue, picking the tense on instinct instead of by rule.
Blank mid-sentence and nothing bad happens — she waits. That's the practice, without unnecessary judgement.
Quick answers
For life experiences and time frames that haven't closed: he visitado México tres veces (experience), hoy he dormido muy mal (today isn't over), este año he aprendido mucho. If the time frame is finished — yesterday, last week — switch to the preterite.
Whenever the action sits at a specific, closed past time: ayer vi una película, la semana pasada viajé a Bogotá, en 2019 me mudé a Lima. Words like ayer, anoche, el lunes lock you into the preterite.
Much less. Mexicans usually prefer ya comí over he comido, and in Argentina and Uruguay the perfect barely appears in speech — it's ya lo hice. If you're unsure in Latin America, the preterite almost never fails.
Haber (he, has, ha, hemos, han) + past participle, and the participle never changes: he hablado con mi jefe, hemos vivido aquí dos años. It's always haber, never tener — and watch the irregular participles: escrito, dicho, hecho, visto, puesto, roto, abierto, vuelto.
No — ayer closes the time frame, so it takes the preterite: ayer comí. Keep the pairings: ya / todavía no / nunca / alguna vez → present perfect; ayer / anoche / la semana pasada → preterite.