As three teenage girls are waiting in a car to be driven home the morning after a sleepover party, a strange man gets into the driver's seat. His name is Kevin (James McAvoy) — a seriously mentally ill man with 23 personalities. He kidnaps the girls and shuts them away in a locked bunker. They quickly learn he has more than one identity when he shows up dressed as a woman, telling them, "Don't worry. He knows what you're here for. He knows he's not allowed to touch you."
Another of his personalities, Hedwig, says he's nine years old. One of the girls, Casey (Anya Taylor-Joy), realizes the only way they can get out is to convince one of Kevin's alter egos to let them go. She thinks maybe Hedwig will help, but he tells them, "He's done awful things to people and he'll do awful things to you." Hedwig tells them that they're being prepared for "The Beast."
Meanwhile, Kevin's psychiatrist, Dr. Fletcher (Betty Buckley), who doesn't know what he's done, believes there is a submerged personality she hasn't yet met who will materialize and dominate all the others.