A Quick Guide to the Spanish Perfect Tense


August 22, 2018

Follow Us Now

Being able to conjugate verbs in the perfect tense is a great skill to have, as it helps you to describe things that have occurred in the past. All you need to know is how to conjugate one verb (haber), and how to form past participles.

Read on to learn how to do it!

Spanish Perfect Tense

What is the perfect tense?

You might hear lots of different names for this tense, like ‘present perfect,’ ‘perfect indicative,’ or ‘pretérito perfecto compuesto.’  Don’t be put off by these names, as they all mean the same thing, which we’ll call ‘the perfect tense’ for simplicity!

We use the perfect tense to describe something that has happened. Think of it as the not-too-distant past.

It’s more commonly used in Spain than Latin America, just as it’s more common in the UK than the USA. Here’s a table to demonstrate the difference between the perfect tense and the preterite (which is a completely different past tense).

Perfect tense
Preterite tense
I have eaten dinner (already tonight).I ate dinner (yesterday).
What have you been doing (today, before you came here)?What did you do (at a specific point in the distant past)?
I’ve been skating (today).I went skating (at a specific point in the distant past).
It has been a pleasure to meet you (today).It was a pleasure to meet her (last week).
I think it has rained (recently, because it’s wet now).I think it rained (last week, but it may well be dry today).

With practice, it will soon become clear when to use which tense. Basically, if you want to say, “I have ...-ed,” then you’ll need the perfect tense.

How to form it?

The good news is that the perfect tense is pretty easy to form, as it’s made of two simple parts.

  • Haber

This verb means ‘to have’ when it’s used in certain tenses, including the perfect tense (not to be confused with tener, which means ‘to have’ in pretty much all other situations).

  • Past participle

This is the -ed version of the verb, e.g. knitted, played, swam.


Here is the conjugation of haber that you’ll need:

YoheI have
hasYou have
haHe/she/it has
You (formal) have
NosotroshemosWe have
VosotroshabéisYou (plural) have
hanThey have
You (formal plural) have

Top tip: remember that in Spanish, the ‘h’ is silent.

For the perfect tense, this is the only verb you need to know how to conjugate! The past participles don’t actually need to be conjugated...

Past participles

Regular formation

The normal formation of past participles is super simple. You take the verb in the infinitive, then:

  • For -ar verbs, remove the -ar then add -ado.
  • For -er and -ir verbs, remove the-er or -ir then add -ido.
  • For example:

To play: jugar jugar jug + ado jugado

To love: amar amar am + ado amado

To eat: comer comer com + ido comido

To drink: beber beber beb + ido bebido

To live: vivir vivir viv + ido vivido

To pretend: fingir fingir fing + ido fingido

Irregular past participles

In an unusual twist, the (normally very awkward) verbs ir, ser, and estar actually form their past participles in the regular way!

      To go: ir - ir - + ido ido

      To be: ser ser s + ido sido

      To be: estar estar est + ado estado

However, you’re not gonna get away that easily! This is Spanish, so there’ll always be some irregular ones sneaking around. The following have irregular past participles which need to be learnt.

Top tip: You might start to spot patterns for how the irregular ones form, e.g. things that end in -cubrir (cubrir, descibrir, etc.) have past participles that end in -cubierto (cubierto, descubierto, etc.).
Past participle


As explained on this website, a good general rule is that if you’re talking about something that’s happened in ‘this …’, e.g. ‘today’ (‘this day’), ‘this morning,’ ‘this week,’ ‘this month,’ ‘this year,’ then you’ll need the perfect tense. It’s also useful to recognize other phrases that trigger the perfect tense. Here are some common ones to look out for!

X vecesX times

BONUS LESSON: The Pluperfect Tense

If you’re feeling smart, and you got all that, you might want to also think about the pluperfect tense. Instead of talking about things that have happened, it allows you to describe things that had happened.

It’s formed in almost the same way as the perfect tense, except that haber is conjugated in the imperfect (yet another type of past tense):

YohabíaI had
habíasYou had
habíaHe/she/it had
You (formal) had
NosotroshabíamosWe had
VosotroshabíaisYou (plural) had
habíanThey had
You (formal plural) had

To sum up …

Perfect:he + past participle
(he comido)
I have + past participle
(I have eaten)
Pluperfect:había + past participle
(había comido)
I had + past participle
(I had eaten)


Let’s see how much you’ve learnt! We don’t expect you to have memorized everything, so feel free to use the whole article, and the little glossary below, to help you translate the following.

my carmi coche
to succeedtriunfar
to learnaprender
a lotmucho
to helpayudar
his secret
su secreto
the problemel problema

1. I have eaten.

Click to reveal the answer

2. You (singular, informal) have seen my car.

Click to reveal the answer

3. She has succeeded.

Click to reveal the answer

4. You (singular, formal) have returned.

Click to reveal the answer

5. We have learnt a lot today.

Click to reveal the answer

6. You (plural, informal) have helped a lot.

Click to reveal the answer

7. They have discovered his secret.

Click to reveal answer

8. You (plural, formal) have solved the problem.

Click to reveal the answer

Well done for getting through the test; there was a lot to take in!


So there you have it, a pretty simple tense to get right, as long as you learn to conjugate haber, and learn your irregulars! Perfect!

Want to learn Spanish verb conjugation without memorizing anything? Check out this awesome tool below!

About the author 

Annabel is a language-enthusiast from the UK. She studied Spanish and French at the University of Southampton (with an Erasmus study year in Madrid!) and recently graduated. She has interests across the Spanish-speaking world, and is a fan of language in general.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}