Gillian Holroyd (Kim Novak) ist eine moderne Hexe, die im Greenwich Village lebt. Der Verleger Shep Henderson (James Stewart) zieht in die Wohnung über ihrer und sie interessiert sich für ihn. Als sie erfährt, dass er am nächsten Tag ihre College-Nemesis Merle Kittridge (Janice Rule) heiraten soll, benutzt Gillian ihre Katze Pyewacket, um einen Liebeszauber auf Shep zu wirken. Shep ist sofort von Gillian begeistert und trennt sich am Morgen ihrer Hochzeit von Merle. Gillian arrangiert, dass der Autor Sidney Redlitch (Ernie Kovacs) Shep besucht in der Hoffnung, dass Shep sein nächstes Buch veröffentlicht, über Hexen in New York. Als Gillian erfährt, dass ihr Hexenbruder Nicky (Jack Lemmon) mit Sidney zusammenarbeitet, befürchtet sie, dass Shep ihre wahre Natur und ihren Zauber auf Shep entdecken wird. Als sie entdeckt, dass sie sich tatsächlich in Shep verliebt, etwas, das sie ihre Kräfte kosten wird, muss sie entscheiden, was sie wirklich will.