Francova Lhota (německy Franzenschlag) je obec v okrese Vsetín ve Zlínském kraji. Leží sedmnáct kilometrů jihovýchodně od Vsetína v údolí horního toku Senice na úpatí Javorníků, blízko slovenské hranice. Žije zde přibližně 1 500 obyvatel. Obec je členem Dobrovolného sdružení obcí Hornolidečska, které se sdružily za účelem spolupráce regionálních vesnic na rozvoji (např. turistika, životní prostředí, služby, dopravní obslužnost).
Obec sousedí na jihu s obcí Střelná, na jihozápadě s Horní Lidčí, na západě s Lidečkem, na severozápadě (místní část Pulčín) s obcemi Lužná a Zděchov, na severu s Valašskou Senicí a na východě s místními částmi Dešná a Strelenka slovenské obce Lysé pod Makytou v okrese Púchov.