นอกเหนือจาก B-tree ที่เป็นค่าเริ่มต้น PostgreSQL มี index ชนิดเฉพาะทางหลายแบบ — GIN, GiST, BRIN, Hash — แต่ละแบบเหมาะกับข้อมูลและรูปแบบ query ที่แตกต่างกัน บวกกับ partial และ expression indexes เพื่อความยืดหยุ่น การเลือกชนิด index ที่ถูกต้องสามารถปรับปรุง performance อย่างมากสำหรับ query เฉพาะทาง
