IB Spanish B HL · Grammar

Hoy he comprado, ayer compré: the one-word test that picks your Spanish past tense.

Perfecto or indefinido? Stop counting how long ago it was. Look at the word in front of the verb.

By Magdalena Sastre · November 2026

IB Spanish B HLIB Spanish B

← Back to articles
Two cards: hoy he comprado and ayer compré
Magdalena SastreMagdalena SastreIB Spanish tutor · Mallorca

“Hoy fui al supermercado.” “Ayer he comprado pan.” Both sentences are understood in a conversation, and both can lose accuracy marks in an exam written for Spain-based Spanish. Choosing between the pretérito perfecto (he comprado) and the pretérito indefinido (compré) is not about how long ago something happened. It is about whether you still feel it in the present.

The one-word test: can you add “este”?

The perfecto is two words (haber + participle) and “brings the past into the present”. The indefinido is one word and closes the event. The fastest check is a time marker:

  • Perfecto: hoy, esta mañana, este verano, esta semana, este año, últimamente, ya, todavía no. Este verano he ido a Italia: the summer is not over, or it still counts as “my summer”.
  • Indefinido: ayer, anoche, anteayer, el lunes, la semana pasada, el verano pasado, hace dos días, en 2019. El verano pasado fui a Italia: finished, closed.

If the sentence naturally takes “este / esta / hoy”, reach for the perfecto. If it takes “pasado / hace / ayer”, reach for the indefinido.

The same trip, three sentences

  1. Este verano he ido a Italia. (perfecto: this summer, still part of now)
  2. El verano pasado fui a Italia. (indefinido: a closed period)
  3. Este verano voy a ir a Italia. (ir a + infinitive: it has not happened yet)

Say these aloud in a row. The change is in the time marker first, then in the verb. Students who change only the verb and leave the marker alone are the ones who write “ayer he comprado”.

Why this matters at HL level

At higher level you are expected to move between time frames without breaking the sentence: a news-style report in the perfecto, a story in the indefinido, a plan with ir a. A single wrong tense in the first sentence of a paragraph tells the reader that the whole time frame is shaky. Check the current subject guide for how language accuracy and range are assessed in your papers and oral.

Do not ask “how long ago was it?” Ask “which time marker would I put in front of it?”

A caution about regions

Usage varies across the Spanish-speaking world. In much of Spain the perfecto goes with hoy and este; in many parts of Latin America speakers use the indefinido for those same moments (hoy compré pan). Neither is “wrong” in real life. For an exam, choose the pattern taught in your course and be consistent within one text.

Ten-minute drill

Write six sentences about your own week, two for each pattern: two with hoy / esta semana + perfecto, two with ayer / la semana pasada / hace dos días + indefinido, two with ir a + infinitive for next week. Underline the time marker in every sentence, then swap them with a different marker and rewrite the verb. For the irregular indefinidos, check the new stems you are least sure of: tuve, estuve, pude, puse, quise, vine, hice, dije, traje, conduje.

For the adult in the room

You can check this without Spanish. Ask your child to read you three sentences and to tell you, in English, the time marker in each one and whether it is “still now” or “closed”. If they can say that quickly, the grammar is under control. If they hesitate, the rule has been memorised but not yet understood.

If you want your past-tense mistakes sorted into patterns like these and trained one at a time, book an assessment lesson below.

Assessment Lesson

Ready for your 15-minute initial assessment lesson?

Book a 15-minute initial assessment lesson and we will find exactly where you stand, set a clear goal and build a personalised study plan. Choose a time that suits you below.

© Magdalena Sastremagdalenasastre.es · Mallorca, Spain
Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad