NOTE: This spoiler was submitted by Jeremy

The film opens with the voice of a woman called “The Oracle” (Penny Ryder) talking about love and how one chance moment in time leads to things going wrong. We cut to Italy where Jack (Sam Claflin) is out for a stroll with a journalist he recently met named Dina (Olivia Munn). As they are about to part ways, Jack wants to go in for a kiss until an old college friend of Jack’s named Greg (Alexander Forsyth) comes in to totally ruin the moment. He leaves with Greg and misses his chance with Dina.

A while later, Jack’s sister Hayley (Eleanor Tomlinson) is getting married to Roberto (Tiziano Caputo). Their friends Rebecca (Aisling Bea) and Bryan (Joel Fry) are in attendance, with the latter being Hayley’s maid/man of honor. Also showing up is Jack’s obnoxious ex-girlfriend Amanda (Freida Pinto) and her insecure boyfriend Chaz (Allan Mustafa). Rebecca introduces them to an old roommate, Sidney (Tim Key), who is dressed in a kilt. Everyone goes to the wedding where Hayley and Roberto are pronounced husband and wife.

At the reception, Jack is surprised to see Dina there, as she was invited by Hayley and had just broken up with her cheating boyfriend. Sidney tries to talk to Dina but is clearly making her uncomfortable with how awkward he is. Bryan wants to impress one of the guests, Italian film director Vitelli (Paolo Mazzarelli), hoping he will land Bryan a role in one of his new movies. Rebecca has a crush on Bryan and tries to get closer to him. To complicate things, an old schoolmate of Hayley’s named Marc (Jack Farthing) has shown up uninvited and coked out of his mind to try and sabotage the wedding to win over Hayley.

Hayley finds Marc and learns what he is trying to do. She asks Jack to help drug him by using some sleep drops she has been taking that will knock him out so he can’t ruin the wedding. Jack does so, but some kids switch the name cards on the table to rearrange the guests. This puts Jack next to Amanda and Chaz, and has Bryan drink the drugged champagne. Jack tries to get Dina alone from Sidney, but he can’t take a hint and follows them to the bar until Jack has to explicitly tell him he wants to be alone with Dina. Meanwhile, Bryan tries to talk to Vitelli but he’s already starting to fall asleep and makes a fool of himself.

Chaz confronts Jack because he won’t stop obsessing over the fact that Amanda thinks Jack has a bigger penis than he does. He tries to insult Jack but only ends up confusing him, and he tells Chaz that he and Amanda hate each other. Hayley sees that Marc is still awake and pleads with Jack to do something about him. When Jack goes to find Marc, he reveals that he and Hayley had sex three weeks earlier and is threatening to let Roberto know about it. Jack gets Sidney and drags Marc into a closet where they barricade him with a dresser.

Bryan is called up to give his speech. He slurs through the whole thing and directly references Vitelli, thinking he is just having a dream. He spots the wedding cake and grabs a big chunk off with his bare hands and stuffs it in his face before Jack gets him away. Dina is then called away on a work errand and must leave. Jack tries to go after her but is found by Amanda and Chaz after Chaz told her that Jack hates her. Jack tries to cover his back but then flat-out tells her that their relationship was nothing but misery. She responds by head butting him and giving him a bloody nose.

Marc is freed from the closet by another lady and he rushes to the mic to blurt out that he and Hayley had sex. Hayley grabs him off the stage and starts hitting him, but Roberto asks if it’s true. He realizes it is and he walks away. Hayley follows him and tries to explain himself, but Roberto declares that the marriage is over. Things get more chaotic, and Roberto falls over the ledge. The scene stops as The Oracle chimes in again to show how things would be different in the multiple ways that the children could have rearranged the seating order. We see glimpses of several scenarios where Amanda, Rebecca, Dina, or even Marc ended up getting drugged, Jack and Rebecca hook up, or Hayley and Amanda end up fighting.

The now “real” scenario has Jack accidentally drinking the drugged champagne. He runs to the bathroom to try and puke it out but cannot force himself to do it, so he tries to get Bryan to do it for him. Dina walks in on them and they are both embarrassed. Jack returns to the table and tries to listen to Dina as she talks about how her mother died of cancer, but despite trying hard to stay awake, he ends up passing out and it pisses Dina off. Afterwards, Amanda tries to tell Jack about how Chaz proposed to her, but he’s asleep for that too.

Jack picks himself up and goes to find Marc, but he’s too groggy to stop him from doing anything. Bryan gets Jack and takes him outside, where Jack laments that he’s a screw-up, but Bryan assures him he’s a good friend and brother. When Marc mentions his affair to Hayley, she confesses to Jack and worries that her relationship with Roberto is over. Jack comforts her and then goes to sincerely ask Marc to back off and not ruin things for Hayley if he really cares about her. Sidney also goes to Jack for advice but keeps interrupting, until Jack tells him to just listen to people instead of talking about himself so much. Meanwhile, Bryan and Rebecca hook up.

Bryan goes up to give a different speech, which is more heartfelt and moving. Marc then goes up to the mic, seemingly getting ready to reveal the affair again, but after some hesitation, he wishes Hayley and Roberto a happy relationship. She goes to see him one last time, thanking him for that. Elsewhere, Chaz and Amanda break up, but on pleasant and mutual terms. Sidney then meets a wedding guest named Cristina (Francesca Rocco), whom he had made a fool of himself in front of in the previous timeline.

Jack finds Dina and apologizes to her for how he acted and admits things didn’t go as planned for him. He mentions that he wanted to kiss her when they had last seen each other and thought he felt a connection with her unlike any that he had felt before. She admits that he wasn’t wrong about it, but she still has to leave for her work. They say farewell, and Jack goes to sit at the bar. Bryan joins him and gets ready to make peace with not pursuing his acting career until Vitelli comes by to tell him he was moved by his speech and gives him his card to call his assistant to arrange a role in his next film. Seeing this as a sign that things can work out if possible, Jack runs off to find Dina. He manages to catch her in the street and goes to kiss her until an old acquaintance of Dina’s tries to talk to her. Jack tells him to fuck off and he finally gets to kiss her.

The credits show other bits of “what if” scenarios during the reception, including Jack and Rebecca embarrassing themselves in front of Vitelli and Chaz trying to pull down Jack’s pants.

Brought to you by

Jack's sister Hayley is getting married to Roberto. At the reception, he runs into a woman named Dina he had met a while back that he missed his shot with. Complicating things are Jack's bitter ex-girlfriend Amanda, her insecure boyfriend Chaz, and Hayley's obsessive old schoolmate Marc, who is high on coke and plans to ruin the wedding to win over Hayley.

Hayley asks Jack to drug Marc with sleeping drops to stop him from ruining everything, but some children mess around and rearrange the seating order, causing Jack and Hayley's friend Bryan to get drugged. This causes Bryan to embarrass himself as he groggily gives a maid of honor speech in front of Vitelli, a prominent director that he wants to impress. Although Jack tries to stop March from ruining things, he ends up revealing that he and Hayley had sex three weeks before the wedding. Roberto is devastated and declares the relationship over.

The film rewinds to show other scenarios with different seating arrangements until it comes to the scenario where Jack ends up getting drugged, causing him to make a fool of himself in front of Dina. However, he does manage to get Marc to not ruin anything, and instead, Marc wishes Hayley and Roberto a happy relationship.

Jack apologizes to Dina and admits he thought they had a connection, which she agrees with, but she has to leave on a work errand. Jack and Bryan resign to their failures until Vitelli tells Bryan he was moved by his (real, not drugged) speech, and he gives him a card to make arrangements for him to be in his movie. Jack takes this as a sign and runs off to find Dina where he finally kisses her.