Lewis (Owen Vaccaro), de tan sólo 10 años de edad, acaba de perder a sus padres y va a vivir a Michigan con su tío Jonathan Barnavelt (Jack Black). Lo que el joven no tiene ni idea es que su tío y la vecina de al lado, la Sra. Zimmerman (Cate Blanchett), son, de hecho, hechiceros.