A family's serene beach vacation turns to chaos when their doppelgängers appear and begin to terrorize them.
In order to get away from their busy lives, the Wilson family takes a vacation to Santa Cruz, California with the plan of spending time with their friends, the Tyler family. On a day at the beach, their young son Jason almost wanders off, causing his mother Adelaide to become protective of her family. That night, four mysterious people break into Adelaide's childhood home where they're staying. The family is shocked to find out that the intruders look like them, only with grotesque appearances.
- A young Adelaide (Madison Curry) goes to the beach on a trip with her parents Rayne and Russell (Anna Diop and Yahya Abdul-Mateen II). After Russell wins Adelaide a Thriller T-shirt at a carnival game and plays Whac-a-Mole, Adelaide wanders off and encounters a man with a Jeremiah 11:11 placard and then walks into a nearby fun-house. Inside, she's terrified by the mirrors and vibe of the place and eventually comes face to face with an exact doppelganger. The incident scares her. Some time later, Adelaide is refusing to talk as her parents worry about her. The therapist tells them to make Adelaide tell her story through the form of anything - reading, writing, or dance.
Many years later, an adult Adelaide Wilson (Lupita Nyong'o) goes on a beach trip with her husband Gabe (Winston Duke) and their two children Zora (Shahidi Wright Joseph) and Jason (Evan Alex). While the family has lunch at their beach house, we find out several things - one is that the beach trip was to help the children cope with the death of their grandmother and the other is that Adelaide appears to still be terrified of the idea of going to the beach because of what happened before and refuses to go. After some persuasion, however, she reluctantly agrees to join her family to go to the beach. On the way, the family sees a man being brought into an ambulance - it is the same man that Adelaide encountered many years ago with the Jeremiah 11:11 placard.
At the beach, the Wilson family meets their friend the Tylers, comprising of Kitty (Elizabeth Moss), Josh (Tim Heidecker), and their twin teenage daughters Gwen and Maggie (Cali and Noelle Sheldon). While the kids are all at the beach, Kitty and Adelaide talk about Adelaide's soft-spoken nature and her past as a young ballet dancer. Jason soon wanders off on his own and finds a man with his arms stretched out dripping with blood. Adelaide notices her son missing and panicking, eventually finds Jason and decides that it's time for the family to go back to the house.
Later that night, after the family settles down, Adelaide tells Gabe all about her childhood trauma and worries that recent events mean that her doppelganger is coming to get her. Gabe tells her not to worry... and almost instantly, the power goes off. As Gabe is about to run the backup generator, Jason alerts the family that there's a family in their driveway. Adelaide quickly calls 9-1-1 while Gabe attempts to scare the family off. Eventually, the family begins entering the Wilson's house, and one of the figures hits Gabe with a baseball bat while everyone else corners them in the living room.
Inside the living room, the Wilsons get a better look at the family... and it is all doppelgangers of themselves with their faces painted in red, wielding a pair of scissors. Adelaide's doppelganger tells them of a story of a princess and her shadow and their relationship, before forcing Adelaide to handcuff herself to the table. She then makes Zora run away from the house with her doppelganger in hot pursuit, makes Jason join his to play, and has Gabe's drag him off to a boat. (Note: for posterity's sake, although their names are never explicitly used, the doppelgangers are referred to by their names in the closing credits - Adelaide's is Red, Gabe's is Abraham, Jason's is Pluto, and Zora's is Umbrae.)
From this point on, we encounter the family dealing with their doubles in several ways.
After running far away, Zora thinks she's outrun her doppelganger Umbrae... only for her to appear on the top of a car. A neighbor spots the commotion and confronts them... but Umbrae murders him with her scissors while Zora escapes.
Abraham drags an unconscious Gabe all the way to the family's boat and then places him inside a bag. Gabe eventually awakens and successfully throws Abraham overboard. Later on, however, the boat engine fails, and Gabe falls in the water. He ultimately makes his way back to the boat... only for Abraham to emerge and grab him. After a fight, Gabe manages to turn on the boat's engine in time, completely eviscerating Abraham.
Back at the house, Jason leads Pluto inside a closet and notices that he mirrors his actions almost simultaneously. He takes off his mask and finds that half of Pluto's face is burned off. Jason impresses him with a magic trick, but when Pluto demands that he do the trick again, he successfully traps him in the closet and escapes.
Meanwhile, Red holds Adelaide hostage and begins trying to slam her face against the glass table, but the commotion caused by Jason's escape leads her away. In a panic, Adelaide manages to get the fireplace poker, destroys the leg of the table, and get Jason. They are both reunited with Zora and Gabe, and the Wilsons manage to escape on the boat with Red and Pluto watching them.
At the Tylers, Kitty thinks she sees something outside. Josh pretends that he does see it, only to reveal that he's just messing with her. The twins then come out of their rooms and talk, and the second they think that everything is alright...a set of doppelgangers wearing red, similar to the Wilsons, all emerge and kill the whole family. When the Wilsons arrive looking for help, Kitty's double drags Adelaide into the house while Gabe attempts to distract Josh's double. After a fight, the Wilsons manage to kill all of the Tylers' doppelgangers and reunite inside the house.
The Wilsons turn on the TV and find out from frantic news reports that the red doubles have been inexplicably appearing and killing people all over the world, and have joined together to hold hands (similar to Hands Across America). Gabe wants to take refuge in the house, but Adelaide says they have to keep moving and escape. The family decides to take the Tylers' car, but when Adelaide looks for the key, a still-living Kitty's doppelganger attacks her. She manages to kill her, but when the family gets to the car, Umbrae appears. After a chase sequence, they manage to kill Umbrae when they speed up and abruptly stop the vehicle, causing her to fly into a tree.
It is now morning, and the Wilsons get to the boardwalk. At the boardwalk, they see their original car burning with Pluto standing in front. Adelaide decides to get out and walk to him... and soon realizes that it's a trap. Jason acts fast and makes Pluto walk backwards into the burning car, and just as the family thinks it's over, Red grabs Jason.
Adelaide runs after them, while Zora and Gabe see that the beach is now full of red-faced doppelgangers joining hands. Adelaide makes her way back to the fun-house and goes all the way down into a tunnel with rabbits roaming free. She finds Red inside one of the many rooms, and Red explains her plan. Red says that all this time, the underground (presumably the dimension of Hell) has been filled with everyone's doppelgangers, and now it is their time to be on the surface. She says that she has always been a part of Adelaide, and when she was a ballet dancer as a kid, it led her out of the tunnels and into the fun-house where they met. It took her a long time, but a plan was made with everyone in the tunnel which was now being executed.
After a fight, Adelaide manages to overpower Red and gets Jason back. The family reunites and drives away. All is good, and everyone looks relieved until a quick flashback shows that when "Red" met Adelaide in the fun-house all those years ago, she knocked her out, took her Thriller T-Shirt, and went off into the real world. The "Adelaide" we've been watching for the whole movie is actually the doppelganger, and "Red" was simply the real Adelaide getting her revenge (this also explains why "Red" is the only one of the doubles to have concrete speech while all the other doppelgangers in the film have guttural, animalistic sounds). Jason appears to realize the truth, and puts his mask on uneasily.
The film ends with a zoom out showing all the red doppelgangers around the United States joined together, holding hands (similar to Hands Across America), with news and police helicopters surveying them from above.