Gillian Holroyd (Kim Novak) modern bir cadıdır ve Greenwich Village'da yaşamaktadır. Yayıncı Shep Henderson (James Stewart) üst katındaki daireye taşındığında ona ilgi duyar. Bir sonraki gün üniversite düşmanı Merle Kittridge (Janice Rule) ile evleneceğini öğrendiğinde, Gillian, kedisi Pyewacket'i kullanarak Shep'e aşk büyüsü yapar.
Shep hemen Gillian'a aşık olur ve düğünlerinin sabahında Merle ile ilişkisini bitirir. Gillian, yazar Sidney Redlitch (Ernie Kovacs)'i Shep'in ziyaret etmesi için düzenler, umudu Shep'in New York'taki cadılar hakkında bir sonraki kitabını yayınlamasıdır.
Gillian, savaşçı kardeşi Nicky (Jack Lemmon)'nin Sidney ile işbirliği yaptığını öğrendiğinde, Shep'in gerçek doğasını ve Shep'e yaptığı büyüyü öğreneceğinden endişelenir. Gerçekte Shep'e aşık olduğunu ve bu durumun onun güçlerini kaybetmesine neden olacağını keşfettiğinde, gerçekten ne istediğine karar vermek zorundadır.