Arrogant teen Kyle Kingson (Alex Pettyfer) is wealthy, popular and gorgeous. Everything changes, however, when he humiliates classmate Kendra Hilferty (Mary-Kate Olsen), an eccentric witch who transforms him into a scarred, tattooed monster. Without his looks to rely on, odious Kyle must find someone to love him within a year, or he'll stay that way forever.
Retreating from public view, Kyle's Brooklyn penthouse also happens to be the perfect hideout for fellow teen Lindy (Vanessa Anne Hudgens), who's in grave danger after witnessing a crime. Inevitably, Kyle falls for his new lodger, but will she discover his inner beauty and break the spell in time?