Ragini (Kainaz Motivala) and Rajkummar Rao play a young couple planning a weekend getaway filled with excitement and adventure. The story begins with Ragini expressing her desire to spend time with her friend Piya and her friends in Matheran, hoping that Uday (Rajkummar Rao) will join her. However, Uday’s reaction is less than warm; he is rude, forceful, and dismissive of her wishes, insisting that she come with him instead. Despite Ragini’s preference to be with her friends, Uday shows a lack of consideration for her feelings and pushes her to go along with his plans.
Their journey starts with a drive through scenic locations, where they pick up supplies and spend some relaxed moments on the beach, enjoying the ocean breeze. As they arrive at Uday’s mysterious, abandoned house located deep within a remote forest, Ragini’s mother calls to check on her, but Ragini lies and ends the call to avoid revealing their whereabouts.
The house itself is an eerie, desolate structure that immediately sets a haunting tone for the story. Inside, they notice worms in their food, though they dismiss this disturbing sign. It is later revealed that Uday is involved in a sinister business—making and selling sex tapes of innocent girls, with his plans centered around Ragini. Unbeknownst to her, Uday has set up hidden cameras all over the house, including in the bathroom where Ragini is bathing, with the intention of secretly recording her. He dreams of capturing footage of her to fulfill his ambition of becoming an actor, a plan that highlights his manipulative and unethical nature.
The atmosphere thickens when Ragini’s friend Piya and her boyfriend Vishal arrive unexpectedly. Their presence disrupts Uday’s plans, leading to tension and discomfort. Despite Uday’s irritation, the group indulges in music, dancing, and drinking. During a conversation, Vishal shares a local legend about a woman who was accused of being a witch, murdered by her family, and then returned as a vengeful ghost to kill her loved ones. Uday dismisses this story as mere superstition. However, Vishal begins to sense something strange lurking in the house; he notices a door that opens and closes on its own and becomes increasingly unsettled.
Vishal’s suspicion grows as he ventures into a room and then tries to leave, only to find himself locked inside. He manages to escape through a window but later blames Uday for trapping him inside, which causes tension among the group. Piya notices scratch marks on Vishal’s neck, sparking suspicion and arguments that eventually lead Vishal to leave with Piya.
The supernatural presence intensifies when Uday secretly activates the cameras again and ties Ragini to the bed with handcuffs, under the guise of intimacy. During this, Uday sees a scratch on his neck, and strange occurrences unfold—lights flicker, doors open and close unpredictably, and an unseen force begins to manifest. Uday attempts to dismiss the eerie happenings by claiming, "I am not a witch." As he resumes his assault with Ragini, his hair suddenly begins to bleed, pulled by some invisible force, revealing the severity of the supernatural presence.
In a moment of panic, Uday calls his friend to verify whether their disturbing experiences are part of a prank, but receives negative reassurance. Realizing the gravity of the situation, Ragini becomes overwhelmed with terror when she finds a camera in the room indicating Uday’s malicious intentions. With her key missing, she remains powerless and helplessly watches as Uday flees, leaving her alone with the vengeful spirit. The ghost, portrayed by Mangala Ahire, takes control of Uday’s body, leading him to commit a tragic suicide by stabbing himself.
The next morning, Ragini struggles desperately to free herself from the cuffs while trying to break the bedpost. Despite her efforts and discovering the key beneath the bed, she cannot unlock herself immediately. The following night, the ghost attacks her once more, but she manages to escape using a shard of glass to cut her hands, bleeding as a means to slip through the cuffs. In her frantic escape, she runs from the house and encounters a series of horrifying sights—Vishal’s lifeless body inside a car and Piya’s corpse in an old well.
Her nightmare worsens as the ghost drags her back to the haunted house, asserting that she is not a witch and denying the legends that branded her as one. The ghost claims she didn’t kill her children and will never leave her house, nor allow anyone else to escape. Ragini is thrown into the air and subjected to violent assault, but she fights back fiercely, almost succumbing but ultimately managing to toss away the weapon the ghost tries to force her to use in a suicide attempt.
For many days, the spirit hangs Ragini in the house, but her resilience ultimately prevails. As dawn breaks, she slides down and frees herself, collapsing on the ground and finally escaping the torment. The film reveals through on-screen text that, after days of suffering, a local boy finds Ragini unconscious and takes her to a hospital. She endures ten months of intensive psychiatric treatment before she agrees to share her harrowing story, illustrating the frightening and traumatic ordeal she survived in the haunted house.
Throughout this chilling journey, the story explores themes of manipulation, supernatural terror, and resilience, leaving viewers with a haunting reminder of the dark forces that can exist in seemingly abandoned places.