While trying to make his sister’s wedding day go smoothly, Jack finds himself juggling an angry ex-girlfriend, an uninvited guest with a secret, a misplaced sleep sedative, and the girl that got away in alternate versions of the same day.
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.
In the opening scene, Jack is trying to muster up the courage to kiss Dina, his sister Hayley’s American roommate, before he leaves to return home to London. He had come to Rome to visit his sister Hayley for the weekend, and Dina had also come to visit Hayley. Before he can kiss Dina, Greg, Jack’s dorm roommate from university, bumps into them. Realising that Jack is also headed towards the airport, Greg offers him a ride and Jack is unable to kiss Dina or even say a proper goodbye. Saying an awkward goodbye, both men leave with Jack upset.
Three years later, Jack is at his sister Hayley’s wedding. Bryan, an aspiring actor and the maid of honor, is more concerned about being called the man of honor, getting introduced to Italian film director Vitelli and not being seated next to Rebecca, rather than helping out the bride. He is late for the wedding ceremony because he decides to get a haircut to better prepare himself for his meeting with Vitelli. Hayley has chosen to not seat Bryan with Vitelli as she has seated all the English people on the English table, which also includes Amanda, Jack’s “nightmare of an ex-girlfriend”.
Amanda has come to the wedding with her boyfriend Chaz, with whom she has clear commitment issues (he proposed six months earlier and she has not responded yet). Other friends of Hayley’s include clingy Rebecca and socially awkward Sidney. Rebecca, upon meeting Chaz, accidentally mistakes him for a cabaret act due to his choice of suit, and mentions that Amanda called Chaz a “dickhead”. Sidney has worn a kilt to the wedding, despite not being Scottish, and becomes easily uncomfortable in it, and continually adjusts himself in front of other guests.
As Jack and Hayley’s parents are dead, Hayley has asked Jack to walk her down the aisle. Just as they are about to, Hayley tells Jack that Dina has come to the wedding and is newly single. After the wedding, Sidney approaches Dina, which leads to an uncomfortable conversation between the two and ends with Sidney leaving to get some champgane for the both of them, despite Dina not wanting any. Meanwhile, Jack and Bryan are talking about how Bryan will create a good first impression on Vitelli, when Bryan learns that he has to make a maid-of-honor speech. Rebecca joins the conversation, and while she continues to compliment him, Jack sees Dina for the first time in three years. Both of them talk and they confess to one another that they used to ask Hayley about the other.
Marc, Hayley’s school classmate, arrives at the wedding venue high on cocaine and plans to ruin the wedding. Hayley confronts Marc and asks him to leave. Their talk is interrupted by Roberto, Hayley’s husband, and he ends up having Marc stay for the celebrations.
Hayley asks Jack to drug Marc with her sleeping drops and he reluctant agrees. He goes to their table and puts the drops into Marc’s empty champagne glass, but some children mess around and rearrange the seating order. The narrator advises the audience about the many variations a table of eight can be seated.
After the rearrangement, Bryan is now seated with the drugged champagne glass and quickly drinks it all. Jack arrives at the table and attempts to switch glasses, not knowing the drops have already been ingested by Bryan.
Marc tells Hayley that he will tell Roberto they slept together a few weeks ago, if she does not tell him first. Hayley once again asks Jack to deal with him, so Sidney and Jack attempt to lock Marc in a closet.
This works for a while, and in the meantime Jack and Dina reconnect, Chaz finds out that Jack and Amanda’s connection was just great sex and becomes threatened, and Bryan attempts to make his Maid of Honour speech but just mumbles through it and than destroys the cake.
Marc is released from the closet by a random guest who hears his yelling. He goes up to the microphone and tells everyone about that he and Hayley had slept together recently. Roberto is upset and after going out onto a balcony has an argument with Hayley about their marriage being over, when he stumbles and falls to his death.
The scene is frozen with Roberto tumbling over the balcony and the narrator reminds the audience of how the different variations of seats at the table can affect the wedding. In fast-forward, we see a number of those variations with different people being drugged each time, all ending in chaos and disaster.
In the last variation, in real-tome, Jack is sat beside Dina but is also the one that ends up drugged. He attempts to throw it up, but is unable to. Bryan comes to the washroom and attempts to help, but Dina than walks in on Jack on his knees with Bryan’s fingers down his throat. They try to move past it back at the table, but as Dina tearfully opens up about the affect her mother’s death had on her, Jack is struggling to stay awake which upsets her.
While everything is going awry for Jack, the other guests make out much better in this variation.
Sidney learns from Jack that he needs to work on listening to women better and makes a love connection with an Italian guest who is as awkward as he is.
Bryan realizes that Rebecca likes him for himself, not who he pretends to be and they hook up and become a couple. His Maid of Honour speech goes very well and impresses the director.
Chaz and Amanda realize through the Maid of Honour speech that they aren’t together for the right reasons and part amicably, with Amanda telling Chaz that he does have the largest member.
After a heart to heart with Hayley about always being there for each other, Jack manages to convince Marc to keep the hook up a secret so that Hayley and Roberto can be happy together.
As Dina is leaving the wedding due to a work emergency, Jack attempts to connect with her for the last time, but she says that while there was a connection, it just came down to bad timing and she leaves.
Bryan and Jack chat at the bar and the conversation inspires Jack not to give up and put himself first. He takes off and races after Dina, catching her at the end of the street attempting to get a car. The music swells, and just as he is about to kiss her, a random guy comes up and tries to say how he knows Dina (referencing the interruption they faced at the beginning of the movie). Jack tells him to go away and they finally kiss.
During the credits, other variations and hijinks are shown.
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.