Faktor-faktor yang mempengaruhi prestasi belajar terdiri dari dua macam, yaitu faktor yang berasal dari dalam (internal), dan faktor yang berasal dari luar (eksternal).
Adapun masing-masing faktor tersebut dijelaskan Slameto (2003: 154) sebagai berikut :
a. Faktor internal, adalah faktor yang berasal dari dalam individu yang meliputi :
1) Faktor biologis, mencakup segala hal yang berhubungan dengan keadaan fisik seperti panca indra, organ tubuh. Kondisi fisik yang sehat sangat memungkinkan dapat belajar dengan penuh konsentrasi.
2) Faktor psikologis, mencakup segala hal yang berkaitan dengan kondisi mental seseorang, seperti :
a) Intelegensi. Intelegensi merupakan kemampuan yang diperlukan dalam pemecahan masalah. Sehingga intelegensi yang tinggi sangat membantu seseorang dalam menyelesaikan kesulitan memahami materi pelajaran.
b) Perhatian. Keberhasilan dalam belajar dapat dicapai apabila seorang siswa mempunyai perhatian yang besar terhadap bahan yang dipelajari.
c) Minat.
Menurut Djamarah (2002: 157) minat merupakan kecenderungan yang tetap untuk memperhatikan beberapa kegiatan disertai dengan perasaan senang. Minat yang tinggi terhadap mata pelajaran tertentu mengakibatkan siswa mempunyai daya ingat yang kuat.
d) Bakat.
Dalyono (Abdullah, 2010: 30) bakat adalah kemampuan khusus yang menonjol diantara berbagai jenis kemampuan yang dimiliki seseorang.
e) Motif.
Motif mempunyai pengaruh besar dalam pencapaian prestasi belajar, sebab dapat mendorong siswa untuk belajar dengan baik dan memusatkan konsentrasi (Djamarah, 2002: 158).
f) Kematangan
. Kematangan merupakan tingkat kematangan seseorang di mana organ-organ dalam tubuhnya telah siap untuk melaksanakan kegiatan
g) Kesiapan.
Kesiapan membantu siswa dalam memahami materi pelajaran. Oleh karena itu siswa yang telah memiliki kesiapan akan mempunyai hasil yang baik.
h) Kreativitas.
Salah satu yang mendorong aktivitas belajar dalam meningkatkan prestasi belajar adalah kreativitas.
b. Faktor eksternal, yaitu faktor yang berasal dari luar diri individu, yang meliputi :
1) Keluarga.
Keluarga mempunyai kontribusi yang besar dalam perkembangan pendidikan. Hubungan yang harmonis antara anggota keluarga, ekonomi, serta perhatian kedua orangtua sangat membantu siswa dalam mencapai prestasi belajar. Faktor keluarga juga meliputi tingkat pendidikan orang tua. Semakin tinggi tingkat pendidikan orangtua, kepedulian, tingkat sosial ekonomi, semakin tinggi pula pemenuhan kebutuhan siswa terhadap hal-hal keilmuan.
2) Lingkungan sekolah.
Kondisi yang terdapat di sekolah seperti metode mengajar, interaksi dengan teman ataupun dengan guru, sarana dan prasarana turut menyumbang keberhasilan siswa dalam belajar. Winkel (1991: 159) menyatakan bahwa sekolah sebagai tempat siswa mempelajari aspek kognitif dan juga afektif, dimana keduanya sebaiknya diberikan bersama-sama untuk hasil belajar yang lebih baik.
3) Lingkungan masyarakat.
Siswa, baik ketika berada di lingkungan keluarga ataupun lingkungan sekolah merupakan bagian dari suatu masyarakat, sehingga kondisi lingkungan masyarakat seperti mass media, latar belakang kebudayaan mempengaruhi keberhasilan siswa.
4) Faktor waktu.
Prestasi merupakan penilaian yang dilakukan terhadapa aktivitas belajar dalam kurun waktu tertentu. Jadi, kemampuan siswa dalam menggunakan waktu juga mempengaruhi hasil yang dicapai. Semakin terampil siswa menggunakan waktu, semakin berhasil pula dalam kegiatannya. Semakin tinggi tingkat intelegensi, daya kreatif, konsentrasi, minat dan bakat semakin tinggi pula prestasi belajar yang diraih. Demikian pula dengan keadaan keluarga, lingkungan sekolah yang sangat mendukung siswa untuk mendapatkan prestasi belajar yang memuaskan.
