Jason Kelly (Zac Efron) is at a funeral for his grandmother. He runs into his obnoxious cousin Nick (Adam Pally), who is high on drugs. Jason's grandfather Dick (Robert De Niro) requests that Jason drive him to Florida as a personal favor. Both Jason and his father David (Dermot Mulroney) don't like the idea, but Jason reluctantly agrees to help out his grieving grandpa.
Jason's fiancee Meredith (Julianne Hough) is obsessively planning over their wedding and is annoyed that Jason has to leave before their upcoming rehearsal dinner. She makes him take her ugly pink car to drive Dick to Florida. Jason goes to pick Dick up from his house, only to find the man masturbating to porn in his living room. Jason is horrified.
The two hit the road and stop at a diner. Jason talks about his job as a lawyer, which he makes sound boring. Dick leaves for a moment, and from a few tables down, a girl named Shadia (Zoey Deutch) spots Jason and recognizes him from a class they had. She approaches him to talk, but Jason is distracted and thinks she's a waitress there to collect the check. She takes his money and runs away with her friends Lenore (Aubrey Plaza) and Bradley (Jeffrey Bowyer-Chapman), but Jason catches her before they drive away. He recognizes Shadia instantly. Dick comes out and pretends to be a college professor, which attracts Lenore, as she really wants to have sex with a professor. Dick and Lenore agree to meet up in Daytona Beach, but Jason and Shadia are against it.
Jason takes Dick golfing. Dick spots two women and tries to make his move on them while pretending Jason is his disabled caddy. When Dick isn't looking, Jason tells the women how Dick isn't taking his wife's death well, prompting them to leave. Dick is upset and tells Jason that he wants to take this trip so he can have as much wild and unprotected sex as he can. Annoyed, Jason still agrees to go along with the trip.
On the road to Daytona, the two encounter a psychotic drug dealer/store owner named Tan Pam (Jason Mantzoukas). Meredith calls Jason with more wedding stuff and getting frustrated that Jason isn't there to help. Once the guys hit the beach, they run into Lenore, Shadia, and Bradley, along with their two doofus friends Cody (Jake Picking) and Brah (Michael Hudson). The two of them enter a flexing competition. Jason and Dick go up to compete as well, nearly winning until Jason is worried that his antics will go viral and cost him his job. Cody and Brah win by default. Dick takes a t-shirt gun and stuffs it with a water bottle, shooting Cody in the face and breaking his nose.
Jason and Dick later go to a party where Lenore and Shadia are. Jason inadvertently ends up smoking crack and doing a naked dance to "Macarena". Outside, Bradley is being harassed by some thugs. Dick beats the crap out of four of them before taking on the leader, Tyrone (Brandon Mychal Smith). Dick makes him apologize to Bradley.
Jason wakes up nude and sunburned on the beach with a toy strapped to his crotch, and a swastika of penises drawn on his head. Meredith calls again to bother him as a child approaches Jason to touch the toy. From a distance, the boy's father thinks Jason is molesting his son and he pushes him off as the cops show up. Dick goes to bail Jason out.
Jason and Dick visit Dick's old friend Stinky (Danny Glover), who lives in a retirement home. He only has a month to live and just wants to spend it there playing bingo. This makes Jason understand Dick's desire to enjoy whatever time he has left in life.
Throughout the rest of their trip, Jason gets closer to Shadia, pretending to be a photographer to get closer to her. This also makes him rethink his relationship with Meredith. Dick says she isn't right for Jason and that he'll be sleepwalking through the rest of his life if he marries her. Meanwhile, Dick ends up hanging out with Lenore, plus Tyrone and his gang after they become friendly. While the group is at a karaoke bar, Cody sneaks by them and stuffs a large bag of weed in Jason's coat and looks at Dick's drivers license. After Dick goes up, Jason and Shadia sing a song together.
Later, Cody reveals to Lenore and Shadia that Dick is not a professor, but a former Special Forces operative, a fact that no one in the family knew about. Cody also tells them about Jason's engagement, forcing him to tell the truth to Shadia, who is pissed at him. The cops then show up to arrest Jason for the weed.
Dick bails Jason out again and admits that he took the trip not mainly for himself, but for Jason to cut loose and not be so uptight like his dad since Dick was never really there for David. Angry, Jason returns to Atlanta to proceed with the wedding.
Jason goes to the rehearsal brunch with Meredith, where they sing the same song that he sang with Shadia. During the slideshow, Dick hacks the slides and puts pictures from the trip, which include Jason naked, making out with an old woman, and getting humped by a dog, along with a picture of Shadia. Jason finally tells Meredith he can't marry her, to which she responds that she slept with Nick while he was away. Jason happily leaves the brunch and runs into Dick outside, who tells him that Shadia is on a bus headed for a cruise. David follows the two and threatens to take Jason's job away from him if he bails on the engagement. David then gets tased by Pam, who joined the guys for some reason.
The guys drive their truck to find the bus with Shadia. The bus driver won't pull over because the cops are following them, and he thinks that Pam narced on him on drugs that Pam sold to him. Dick then speeds up and drives toward the bus until they are both forced to stop. Jason runs out and apologizes to Shadia for lying. He decides to join her on her trip since he's now single, jobless, and possibly wanted by the cops. He goes up to her and they kiss.
Dick returns home with David and apologizes to him for not being a better father. When Dick goes back to his place, he finds Lenore in there wearing his pants. She still wants to have sex with him despite him not being a professor. The two of them proceed to have sex with Dick using every old person cliche to keep Lenore excited.
A little bit after the credits start, we see Jason standing next to Shadia with a baby in his hands at a baptism. The baby is Dick's new son with Lenore, and Jason and Shadia are the boy's godparents. Dick then takes the baby's thumb and uses it to poke Jason's butt.