Mainan teka-teki (bahasa Inggeris: puzzlecode: en is deprecated ) ialah permainan, masalah, atau mainan yang menguji kepintaran atau pengetahuan seseorang. Dalam mainan teka-teki, penyelesai dijangka meletakkan cebisan bersambung dalam cara yang logik, untuk tiba di penyelesaian mainan teka-teki yang betul atau seronok. Terdapat berbeza-beza genre mainan teka-teki, seperti teka silang kata, teka-teki cari kata, teka-teki nombor, teka-teki hubungan, atau teka-teki logik.
Mainan teka-teki biasanya dicipta menjadi bentuk hiburan tetapi boleh juga timbul daripada masalah matematik atau logistik yang berat. Dalam kes tersebut, penyelesaiannya boleh jadi sumbangan penting kepada penyelidikan matematik.[1]