สาเหตุของความยากจนสามารถแบ่งได้เป็นสองแนวทางใหญ่ๆ คือ
สาเหตุจากปัจจัยภายใน ได้แก่ การมีความรู้ความสามารถในการประกอบอาชีพต่ำ เนื่องจากการขาดโอกาสในการศึกษาและพัฒนา ทักษะต่างๆ รวมทั้งการขาดโอกาสในการรับรู้ข้อมูลข่าวสารที่เป็นประโยชน์ นอกจากนี้ การมีปัญหาสุขภาพ และการมีภาระ ในการเลี้ยงดูครอบครัวที่มีขนาดใหญ่ ประกอบกับการมีทรัพย์สินและที่ดินในการทำกินน้อย ปัจจัยเหล่านี้ ล้วนเป็นสาเหตุภายในบุคคลที่ทำให้บุคคลกลายเป็นคนจนได้
สาเหตุจากปัจจัยภายนอก ได้แก่ นโยบายการพัฒนาที่ไม่สมดุลของภาครัฐ ที่เน้นพัฒนาเมืองมากกว่าพัฒนาชนบทหรือการพัฒนาชนบทที่เน้นแต่ทุนทางกายภาพโดยขาดการส่งเสริมทุนทางสังคม เน้นการส่งเสริมอุตสาหกรรมมากกว่าการเกษตร เน้นการจัดสรรทรัพยากรธรรมชาติต่างๆ เพื่อการพาณิชย์โดยไม่ได้คำนึงถึงความยั่งยืน เน้นเป้าหมายการเจริญเติบโต ทางด้านเศรษฐกิจมากกว่าการกระจายรายได้ เน้นการเปิดประเทศมากเกินไปในขณะที่ยังไม่มีมาตรการรองรับผลกระทบ ในด้านต่างๆ ที่ดีพอกระบวนการทางกฎหมายที่เป็นตัวสร้างความเหลื่อมล้ำในสังคม และระบบราชการไม่เอื้อต่อการแก้ปัญหา ความยากจนทั้งในแง่ขั้นตอนในการปฏิบัติงานที่ซับซ้อนและล่าช้า รวมไปถึงความซ้ำซ้อนของหน่วยงานต่าง ๆ ในขั้นตอน การปฏิบัติการ ตลอดจนความไม่สอดคล้องกันของแผนงานและงบประมาณในระดับต่าง ๆ เหล่านี้ล้วนเป็นปัจจัยหลักจากภายนอก ที่เป็นสาเหตุทำให้เกิดปัญหาความยากจนและซ้ำเติมคนจนมากขึ้น