Crystal Chen is a 27-year-old curvy, biracial (half Chinese, half Irish) fitness influencer with 200,000 Instagram followers under the handle CurvyFitnessCrystal. Her platform promotes body positivity, encouraging women of all sizes to embrace fitness without obsessing over weight or appearance.
Her gym sanctuary is disrupted when a tall, muscular stranger loads plates onto the squat rack she had already claimed. Over the following days, the man she dubs "Squat Rack Thief" escalates the rivalry: cutting in front of her at the water fountain, blocking her client Mel's workout path, and walking in front of her camera while she films. Crystal retaliates by hiding his phone. He confiscates hers, reads aloud a Tinder message, and sends a reply on her behalf. He discovers her name from her Instagram notifications but refuses to share his own.
The tension shifts on Easter weekend when Crystal's phone genuinely goes missing. Convinced the stranger took it, she follows him into the men's changing room. The confrontation transforms into an intense kiss against the lockers before another patron interrupts. Crystal then learns a gym-goer accidentally took her phone, proving the stranger innocent.
Crystal's wariness has deep roots. Her ex, Neil, used her as a rebound while still in love with his previous girlfriend, Cammie, leaving Crystal determined never to be someone's second choice. She lives with her older sister Tara, a neonatal nurse who moved in after her fiancé, Seth, unexpectedly called off their wedding.
Family upheaval arrives when Crystal's maternal grandmother, Grandma Flo, announces her engagement to Martin Ritchie, a longtime family friend. Crystal, still mourning her late grandfather, who died of bone cancer three years earlier, struggles to accept the news. At the engagement dinner, Crystal is seated beside an empty chair reserved for Martin's tardy grandson. When Scott Ritchie arrives late from a fire call, Crystal recognizes him as Squat Rack Thief. Worse, family members mention Scott has a girlfriend named Diana, a figure skater touring with Disney on Ice. Crystal concludes he cheated on Diana during their kiss and leaves abruptly.
Scott tracks Crystal to the gym and insists he broke up with Diana two weeks before meeting Crystal but had not yet told his family. Crystal refuses to believe him, haunted by her experience with Neil. She later verifies his story through Grandma Flo and apologizes. Scott asks her on a date, but Crystal declines, citing their intertwined families, his recent breakup, and her refusal to be anyone's rebound.
Grandma Flo schemes to push them together, engineering encounters at a medical clinic and an axe-throwing venue. At the clinic, Scott reveals an intense fear of needles and nearly faints; Crystal cares for him in the waiting room. Their rapport builds, but Crystal lashes out in the parking lot, calling him arrogant. Scott fires back that she is a hypocrite for stereotyping him while preaching against stereotypes. After the axe-throwing outing, Crystal apologizes. Scott assigns her a punishing CrossFit workout as penance. She completes it and buys him sorbet. They walk along the waterfront sharing personal histories and agree to a truce.
Their connection deepens through constant texting and shared errands. Crystal maintains a personal rule of waiting three months after someone's breakup before dating them, to ensure she is not a rebound. Scott asks if she will consider a date on August 6, the day of the wedding, which falls after the three-month window. Crystal agrees. During an IKEA trip, she runs into Neil and Cammie, who have moved in together. Scott protectively pretends he and Crystal are also cohabiting, deepening her appreciation for his sincerity.
After Crystal receives hateful comments online, Scott sends flowers and shares his own story of being bullied in middle school. During a movie night, they kiss, but Scott proposes old-fashioned courting conditions to build trust first: no touching, no kissing, no sex. He reveals that Martin asked them to take things slow before the wedding, though Crystal does not yet understand why.
Scott then grows evasive and distant. Crystal discovers Diana has returned to Boston. Despite their courting rules, Crystal and Scott grow physically closer and eventually sleep together. The next morning, Crystal spots a text from Diana on Scott's phone. Scott explains Diana merely wanted to retrieve a necklace from his apartment. When Crystal presses about his moodiness, Scott reveals the real secret: Martin may be sick. A tumor was discovered weeks earlier, and Martin swore Scott to secrecy to avoid worrying Grandma Flo before the diagnosis was confirmed. At the hospital, the family learns the tumor is benign. Crystal and Scott reconcile and officially become a couple.
Crystal posts a beach photo with Scott to Instagram. Hateful comments flood in, with trolls questioning how someone who looks like Crystal could be with someone who looks like Scott. A BuzzFeed News article amplifies the backlash. At Grandma Flo and Martin's wedding, Holly Whitby, a family friend, expresses shock that Crystal is Scott's girlfriend, reinforcing Crystal's insecurities.
Crystal spirals, obsessively reading negative comments, avoiding the gym, and lying to Scott about being sick. When Scott discovers the articles, he responds to a hateful commenter on Instagram, publicly defending Crystal. The gesture generates more media attention, and Crystal is furious, arguing it makes her look helpless. Scott tells Crystal he loves her. Consumed by self-doubt, Crystal cannot reciprocate. She ends the relationship, saying she needs to find herself first.
Tara and Mel intervene. At the gym, Crystal meets Rhonda, a recently divorced guidance counselor who credits Crystal with inspiring her to lift weights. Training Rhonda reconnects Crystal to her purpose. Crystal's father shares a parallel experience: As a Chinese man dating Crystal's white mother decades earlier, he faced racism but refused to let bigotry define him. He urges Crystal not to let strangers dictate her worth.
Crystal returns to Instagram, renouncing the terms "body positivity" and "self-love" in favor of "body respect" and "self-acceptance," acknowledging that loving yourself constantly is unrealistic. She creates a private Facebook group to protect her community from trolls.
To win Scott back, Crystal enlists his coworker Trevor to stage a fake fire call at the gym. A projector plays a video montage of their relationship, including a candid moment where Crystal tells Mel on camera that she loves Scott. Crystal emerges from hiding, tells Scott she loves him, and explains she was holding herself to an unattainable standard. Scott apologizes for responding to the comments without her permission. They reconcile, and Scott tells her he would have waited forever.
The novel closes with an epilogue framed as a BuzzFeed News follow-up article in which Crystal declares that everyone who does not conform to mainstream beauty standards deserves an epic love story. An editor's note reveals her following has grown to 650,000 and that she and Scott are engaged. Crystal's final Instagram post announces the engagement: Scott proposed at the gym during a workout tutorial, and both families burst from a back room where they had been hiding.