Present perfect atau present perfect continuous

B1 · MenengahBentuk yang sering tertukar

I have read the book atau I have been reading the book? Hasil yang sudah selesai atau kegiatan yang masih berjalan. Bahasa Indonesia memakai kata keterangan, bahasa Inggris mengubah bentuk kata kerjanya.

Yang akan kamu pelajari

  • Present perfect simple untuk HASIL, tindakan yang sudah selesai, atau jumlah tertentu
  • Present perfect continuous untuk DURASI sebuah kegiatan atau kegiatan itu sendiri
  • Bentuk continuous sering menjelaskan keadaan sekarang (mengapa kamu capek, mengapa sesuatu basah)
  • Dengan angka atau jumlah tertentu (three cups, five books) pakai simple, bukan continuous
  • “Sudah … selama”, “sejak”, dan “dari tadi” untuk sesuatu yang masih berlangsung → present perfect (continuous) dengan for (durasi) atau since (titik awal), bukan present simple atau present continuous

Hasil atau kegiatan yang masih berjalan

Kedua bentuk ini menghubungkan sesuatu dari masa lalu dengan sekarang. Bentuk simple (have + past participle) menonjolkan hasilnya atau bahwa sesuatu sudah selesai. Bentuk continuous (have been + -ing) menonjolkan prosesnya: kegiatan itu berlangsung cukup lama dan sering kali masih berlanjut.

Bahasa Indonesia membedakannya dengan kata keterangan: “Saya sudah membaca buku itu” (sudah selesai) dan “Sudah seminggu saya membaca buku itu” atau “Saya masih membaca buku itu” (kegiatannya, mungkin belum selesai). Kata kerjanya sendiri tetap “membaca”. Dalam bahasa Inggris perbedaan ini tidak bisa dilewati: bentuk kata kerjanya selalu menunjukkannya.

"I have read the book. (hasil: saya tahu akhir ceritanya)"
"I have been reading the book. (proses: itu yang sedang saya kerjakan, mungkin belum selesai)"

Present perfect simple: hasil dan jumlah

Pakai bentuk simple kalau yang penting adalah apa yang sudah selesai, atau berapa kali dan berapa banyak sesuatu terjadi, terutama dengan angka tertentu.

Kata kerja keadaan (state verbs) seperti know, like, want, belong, atau have (dalam arti “memiliki”) hampir selalu memakai bentuk simple. “Saya sudah kenal dia selama sepuluh tahun” adalah I've known him for ten years, bukan I've been knowing him.

"She has read that book. (sudah selesai: bukunya sudah kembali ke rak)"
"He has written five books this year. (jumlah tertentu yang sudah selesai)"

Present perfect continuous: durasi dan proses

Pakai bentuk continuous kalau kamu membicarakan berapa lama sebuah kegiatan berlangsung, atau kalau kamu menjelaskan keadaan sekarang yang disebabkan oleh kegiatan panjang yang masih berjalan atau baru saja berhenti.

Dalam bahasa Indonesia kita cukup berkata “Dia sudah dua minggu membaca buku itu” atau “Dia membaca buku itu sejak dua minggu lalu”. Kalau diterjemahkan kata per kata, muncul “She reads that book for two weeks” atau “She is reading that book since two weeks” – keduanya salah. Bahasa Inggris memakai have/has been + -ing: She has been reading that book for two weeks. Ingat juga bentuknya lengkap: have been waiting, bukan have been wait. Untuk durasi (dua minggu, satu jam) pakai for; untuk titik awal (2018, hari Senin, jam 9) pakai since.

Dengan kata kerja seperti work, live, teach, atau study, bersama for/since biasanya kedua bentuk benar: She has worked / has been working there since 2018. Yang salah hanya present simple: She works there since 2018.

Kalau kamu menjelaskan mengapa kamu capek sekarang, dalam bahasa Indonesia kamu mungkin berkata “Saya kerja seharian” atau “Dari tadi saya kerja terus”. Dalam bahasa Inggris, untuk menghubungkan kegiatan itu dengan keadaanmu sekarang, yang wajar adalah I've been working all day, bukan I work all day.

"She has been reading that book for two weeks. (masih berlangsung: durasinya ditonjolkan)"
"Why are you so tired? — I've been working all day. (menjelaskan keadaan sekarang)"

Tes yang berguna: apakah ada angka tertentu?

Kalau kamu menghitung sesuatu (berapa kali, berapa banyak), pakai bentuk simple. Kalau kamu menggambarkan kegiatannya sendiri tanpa menghitung, biasanya pakai continuous.

Petunjuk dari bahasa Indonesia: “seharian”, “sepanjang pagi”, “dari tadi”, “sudah … jam/hari/minggu” untuk kegiatan yang masih berjalan mengarah ke continuous; “sudah selesai”, “sudah beres”, “tiga kali”, “lima buku” mengarah ke simple.

"I have had three cups of coffee today. (dihitung: simple)"
"I have been drinking coffee all morning. (kegiatannya sendiri: continuous)"

Contoh bahasa Inggris sehari-hari

"I've finished the report. (hasil: laporannya sudah jadi)"
"I've been working on the report all week. (proses: usaha dan durasinya ditonjolkan)"
"Your eyes are red — have you been crying?"
"She has written three articles this month."

Perhatikan

✗I am waiting here since one hour.
✓I've been waiting here for an hour.

“Saya sedang menunggu di sini sejak satu jam yang lalu” tidak mengubah kata kerja, tetapi dalam bahasa Inggris perlu present perfect continuous. Di depan durasi pakai for, bukan since.

✗I already wait for an hour.
✓I've been waiting for an hour.

“Saya sudah menunggu satu jam”: “sudah” tidak diterjemahkan menjadi already. Maknanya ada dalam have been waiting.

✗I have been wait for you all morning.
✓I have been waiting for you all morning.

Setelah have been selalu ada bentuk -ing: have been waiting, have been working, have been studying.

✗I have been having three cups of coffee today.
✓I have had three cups of coffee today.

Dengan angka atau jumlah yang sudah selesai pakai simple, bukan continuous.

✗She has read that book for two weeks.
✓She has been reading that book for two weeks.

Kalau kegiatannya sudah berlangsung lama dan belum selesai (“sudah dua minggu dia membacanya”), pakai continuous; has read berarti dia sudah selesai membacanya.

✗How long you are waiting?
✓How long have you been waiting?

Terjemahan langsung dari “Sudah berapa lama kamu menunggu?”. Dalam bahasa Inggris pertanyaannya perlu have di depan subjek: How long have you been waiting?

✗I've been knowing him for ten years.
✓I've known him for ten years.

Kata kerja keadaan seperti know, like, atau belong tidak dipakai dalam bentuk continuous. “Saya sudah kenal dia sepuluh tahun” adalah I've known him for ten years.

Perbandingan dengan bahasamu

Dalam bahasa Indonesia, kata kerja tetap sama walaupun ada durasi: “Saya menunggu sejak satu jam yang lalu”, “Saya sedang menunggu di sini selama satu jam”, “Dia bekerja di sana sejak 2018”

Dalam bahasa Inggris, present simple dan present continuous hanya menggambarkan saat ini. Untuk periode yang berlangsung sampai sekarang, kamu perlu present perfect: “I have been waiting for an hour” (menonjolkan durasi), “She has been working there since 2018” atau “She has worked there since 2018”. Kalimat “I wait since one hour” atau “She is working there since 2018” salah. Perhatikan juga katanya: for + durasi (for an hour, for two weeks), since + titik awal (since 2018, since Monday). “Sudah” di sini tidak perlu diterjemahkan menjadi already, karena maknanya sudah ada dalam have been.

“Sudah berapa lama kamu menunggu?”, “Sudah berapa lama kamu belajar bahasa Inggris?”: pertanyaan tanpa perubahan kata kerja

Pertanyaan ini hampir selalu menjadi How long + have/has + subjek + been + -ing: “How long have you been waiting?”, “How long have you been studying English?” Jangan “How long you wait?” atau “How long are you waiting?”. Kalau jawabannya berupa hasil atau jumlah (“Saya sudah membaca tiga buku”), pakai simple: “I've read three books.”

“Dari tadi”, “seharian”, “sudah … jam” sering dipakai untuk menjelaskan keadaan sekarang: “Matanya merah, dari tadi dia menangis”

Ini persis fungsi present perfect continuous: kegiatan yang berlangsung cukup lama dan menjelaskan sesuatu yang terlihat sekarang. “Your eyes are red — have you been crying?”, “I've been working all day.”, “I've been waiting for ages.” Jangan terjemahkan “dari tadi” menjadi from earlier atau since earlier; pakai for a while, for ages, all day, atau since + titik waktu.

💡 Ada “sudah … selama”, “sejak”, atau “dari tadi” untuk sesuatu yang masih berlangsung? Dalam bahasa Inggris perlu have/has (been), dengan for + durasi atau since + titik awal.

💡 “Sudah berapa lama…?” → How long have you been + -ing?

💡 Ada angka tertentu (tiga kali, lima buku)? Simple. “Seharian” atau “dari tadi”? Continuous.

Situasi nyata: bertanya kepada rekan kerja tentang tugas yang sedang dia kerjakan

"How's the presentation coming along?"

"I've been working on the slides for hours — I still have the data section left."

"Have you finished the introduction, at least?"

"Yes, I've finished that part already — just the data section now."

Latihan

Latihan 1 · Pilih bentuk yang benar

Choose the correct form: I ___ three cups of coffee today. (a completed count)

Latihan 2 · Pilih bentuk yang benar

Choose the correct form: I ___ coffee all morning. (emphasis on the ongoing activity)

Latihan 3 · Pilih bentuk yang benar

Choose the correct form: She ___ that book — it's on the shelf now. (finished result)

Latihan 4 · Pilih bentuk yang benar

Choose the correct form: She ___ that book for two weeks. (still not finished, ongoing)

Latihan 5 · Pilih bentuk yang benar

Choose the correct form: Why are you so tired? — I ___ all day.

Latihan 6 · Pilih bentuk yang benar

Choose the correct form: He ___ five books this year. (a specific completed number)

Latihan 7 · Pilih jawaban yang benar

Which form emphasizes the RESULT or a completed quantity, rather than the ongoing activity?

Latihan 8 · Pilih jawaban yang benar

Which form emphasizes the DURATION or ongoing nature of an activity?

Latihan 9 · Lengkapi dengan bentuk yang benar

Complete with the correct form of 'wait': I ___ for an hour, and the bus still hasn't come. (emphasis on duration)

Latihan 10 · Lengkapi dengan bentuk yang benar

Complete with the correct form of 'finish': I ___ my homework, so now I can relax. (finished result)

Latihan 11 · Kesalahan umum: “sudah … selama” tanpa present perfect

Indonesian: “Saya sudah belajar bahasa Inggris selama tiga tahun.” Which English sentence is correct?

Kuis singkat

Lima pertanyaan beragam untuk mengecek apa yang sudah kamu pelajari.

Pertanyaan 1 / 5

Skor: 0/0

Choose the correct form: Your eyes are red — ___ you ___ ?

Yang sudah kamu pelajari

  • Present perfect simple: menonjolkan hasil, sesuatu yang sudah selesai, atau jumlah tertentu.
  • Present perfect continuous: menonjolkan durasi atau proses, seperti “sudah … selama” untuk kegiatan yang masih berjalan.
  • Bentuk continuous sering menjelaskan keadaan yang terlihat sekarang (capek, mata merah, basah).
  • Angka tertentu memerlukan simple; kata kerja keadaan seperti know tetap simple.
  • Durasi sampai sekarang → have/has (been) … for + durasi / since + titik awal, bukan present simple atau present continuous.
Lihat semua pelajaran di kategori ini