Grandma's Boy follows a 35-year-old video game tester, Alex (Covert). The movie starts with Alex and his roommate playing video games together, when their landlord (Schneider) informs them that they are being thrown out for rent delinquency, which turns out to be because of the roommates penchant for Filipino hookers.
After trying to crash with his friend/weed-dealer Dante (Dante), Alex is offered a place to stay by his Grandmother Lilly (Roberts). He politely turns it down, and goes to stay with his friend/co-worker Jeff (Swardson). But after being caught masturbating by (and ejaculating on) Jeff's mother, Alex winds up spending the night at the office.
Alex is woken up by Samantha (Cardellini), a consultant hired to help with game development. While Alex demonstrates his gaming prowess with some of the younger employees, Samantha has a meeting with the company owner, new-age nut Mr. Cheezle (Nealon), and meets the story's antagonist, game design prodigy JP (Moore).
Alex is soon humbled into accepting his Grandma's offer of a room, and meets her roommates, over-sexed Grace (Jones) and over-medicated Bea (Knight). The ladies soon have Alex doing odd-jobs and chores around the house which leaves him exhausted, and subsequently begins to affect his job performance. Alex's co-workers Jeff, Barry (Hill), and Kane (Yu) prove to be no help, and Alex is forced to think of a plan. An acquisition of a black-box backfires on him, as the ladies become infatuated with Antiques Roadshow, and don't allow Alex access to the TV, which he needs to finish his work.
Alex figures out a way around this. He offers the ladies tickets to the show, and gets them to go to bed early. After a motivational joint, Alex manages to finish his job. The next day, after a meeting, Alex, Samantha, Jeff, Barry, and Kane all go out to celebrate. After a run-in with a new-age restaurant and waiter Shiloh (Spade), the crew ends up at Alex's Grandmother's house, where they find the ladies laughing hysterically as they watch Spanish television. They soon realize why; Grandma Lilly and her roommates drank tea made of Alex's marijuana.
After getting more weed from Dante, a huge amount of people start showing up at the house, and a major party breaks out. The next day, Alex and Samantha affirm their feelings for each other. This is much to the chagrin of JP, who had been pathetically trying to woo Samantha. JP has a breakdown, and winds up at Alex's grandmother's house to talk to him. JP discovers a game that Alex had been developing himself, and is threatened by how well it has been made. JP offers to give Alex notes on it, but instead steals the game and presents it at a meeting the next day as his own.
Alex is infuriated, and after accusing JP of the theft, he is asked to prove his accusations, but because he had been making the game in secret, he can not prove ownership. Incensed at the idea of apologizing to JP, Alex quits his job and leaves. He heads over to Dante's house, and orders him to roll a joint containing several different kinds of super-potent weed. Dante gladly agrees, and they begin to smoke it. In an effort to find the truth, Samantha visits Lilly and inquires about Alex. Lilly doesn't know where he is, but offers to help after she hears about the game. As it turns out, Lilly is the only other person who knows about Alex's game.
Everyone is now in Mr. Cheezle's office. The plan to prove Alex's ownership of the game is this: Lilly will challenge JP at the game. JP at first scoffs at the idea of playing an elderly lady, which prompts Lilly to accept the challenge. After nearly losing the battle, Lilly hits a special code which makes her character utterly destroy JP's character. Mr. Cheezle apologizes to Alex, and offers him his job back.
The movie ends with a party at Dante's house to celebrate the release of Alex's game.