We call a module M almost perfect if every M-generated flat module is M-projective. Any perfect module is almost perfect. We characterize almost-perfect modules and investigate some of their properties. It is proved that a ring R is a left almost-perfect ring if and only if every finitely generated left R-module is almost perfect. R is left perfect if and only if every (projective) left R-module is almost perfect.