The Fabulous Godmother (Billy Porter) narrates about life in a village, saying that everyone has a part to play but little did the villagers know their life was about to change. The villagers sing “Rhythm Nation” as they go about their days working. The Godmother then shows us Vivian (Idina Menzel), who was alone after her second husband’s death. She lives with her daughters Malvolia and Narissa (Maddie Baillio and Charlotte Spencer) and stepdaughter Ella (Camilla Cabello), who they call Cinderella for being covered in ash.
Cinderella sings “You Gotta Be” as she does the work around the house, with some assistance from her three mice friends (James Corden, James Acaster, and Romesh Ranganathan). Everyone joins in song together as Vivian sings about wanting a better life. Cinderella serves the women and Vivian harshly chastises her that she will never find a husband if she continues on like this. Thomas (Rob Beckett) the vegetable merchant comes by with a delivery and is clearly interested in the daughters.
Vivian is excited that one of the daughters has a match – Cinderella isn’t interested but Vivian tells her she needs to make herself a match for someone. Cinderella goes into her basement area where she designs and sews dresses, and she sings “Million to One”, about how even if the chances are small she wants to take her chance at greatness and wants everyone to know her name. While she sings it she saves a caterpillar from a spider and puts it in a box. She imagines having her own dress shop and being able to make and sell all her designs.
Prince Robert (Nicholas Galitzine) sits in a meeting with a princess who pitches him on their marriage in order to join their countries. She has no interest in him other than for political reasons, but he has no interest in settling down and getting married. The Town Crier (Doc Brown) makes announcements to the village as Cinderella finishes sewing her latest dress. When the whole family is leaving to go to town, Cinderella brings the dress but Vivian shames her for engaging in matters of business and orders her to leave the dress.King Rowan (Pierce Brosnan) is furious at his son for turning down an eligible marriage that would have given him new territories, but Queen Beatrice (Minnie Driver) is happy to let Robert make his own choices. Robert says he wants to marry for love but his father harshly tells him if he doesn’t get married he will give the whole palace and crown to his sister Gwen (Tallulah Grieve). Gwen has lots of ideas for how to improve the kingdom but her father constantly ignores her. Rowan tells Robert there will be a ball for him to choose a bride. Robert sings “Somebody to Love” with the assistance of a nearby choir.
The performances go out to the citizens as they announce the ball to the town. During it, Rowan screams at Cinderella for watching from atop a statue of him, but Cinderella responds in a joking manner. He orders her to get down, humiliating Vivian, but Robert is charmed by her and sets his eyes on her. Afterward, Robert tells Rowan he will participate only if every woman in the kingdom regardless of wealth is invited – he points out he has no other option with no successor – which Gwen notes as her father denies her a seat at his table.
Later, Robert dresses as a commoner to try to find Cinderella. Cinderella, meanwhile, sees that the caterpillar has gone into its cocoon. She sneaks out of the house to try to go and sell her dresses. Vivian and the daughters are doing laundry and the girls see a handsome farm boy, but Vivian tells them the only way to improve their lives is to marry someone wealthy who can take care of them, and she sings “Material Girl” and her daughters join in to accompany her.At the market, Cinderella tries to sell her dress but a noblewoman assumes she stole it from the house she serves in. Then she gets made fun of for attempting to be a businessperson.
Robert spots this and the two begin talking about Cinderella’s dream to have her own shop. Robert buys the dress from her, which contains her mother’s broach, for triple her asking price. The Town Crier announces the ball to choose the prince’s bride, and Cinderella mocks him to Robert, not knowing that she’s speaking to Robert himself. She says she has no interest in the ball, but he says there will be wealthy, open-minded people there from all over the world who would buy her dresses, and she decides to go.
At home, she tries to come up with a new dress, and begins singing “Am I Wrong”, while separately Robert, Gwen, Vivian and the girls, and Beatrice all sing different parts as they get ready for the ball. Cinderella completes her new gown, and Thomas comes to the home to meet with Vivian. When Cinderella comes downstairs, Vivian tells her that she does not need to go to the ball because Thomas has expressed his intentions to marry her and she has been promised to him. Cinderella protests, saying she needs to show her dress she spent so long on and Vivian throws ink on it, ruining it.
Cinderella cries and sings a reprise of “A Million to One”. The butterfly emerges from its cocoon and glowing, comes to Cinderella. It transforms into the Fabulous Godmother. He says that Cinderella saved him and that he is going to help her get to the ball. He begins singing “Shining Star” and transforms one of her designs into a real dress, which he says no one will recognize her while she wears – except for the prince. He gives her glass slippers and she joins him in song. He then transforms the mice into footmen and a box into a carriage. He tells her that the magic will end at midnight and they head off to the ball.
At the ball, Robert arrives and all the women sing “Whatta Man” as they try to get his attention. In response, Robert tries to fight them off and he and his friends sing “Seven Nation Army” and the two songs mashup. Cinderella arrives and runs into Vivian, who doesn’t recognize her and is kind and nervous to be around nobility. Later, foreign Queen Tatiana asks her who made her dress. Cinderella says she did and Tatiana says she is interested in finding someone to travel with her and do her wardrobe, and they set a meeting for the next day – Cinderella is thrilled.
Robert sees her and Cinderella realizes that he is the prince. She tries to leave, but he asks her to stay. He introduces his sister Gwen and she reveals she is wearing Cinderella’s dress that Robert bought. Robert asks her to dance, and she accepts – they slow dance and sing “Perfect”. Later, they go to a private room and Robert tells Cinderella about how he never really liked being the prince, how we is never asked how he feels or what he wants. He says he wants to marry her, but Cinderella wants to know what will happen to her work. He says it would be frowned upon for her to work. She tells him she has dreams and says if it’s a choice, she chooses herself and begins to leave but he begins singing again and they kiss just as the clock strikes midnight and Cinderella begins to flee as her dress begins to fall apart.
Robert helps her escape Rowan trying to announce her as the new queen. When a staff member tries to stop her, Cinderella throws one of her shoes at him and rides away as the magic fades away. Rowan is furious at his son for not finding a wife, but Robert explains that the woman he chose didn’t choose him. Beatrice tries to calm the situation but he Rowan snaps at her. Rowan says that because he didn’t choose anyone, Robert will marry a different princess he has arranged him to marry at the week’s end and he has no say in the matter and doesn’t care if they love each other. Robert leaves, defeated. Beatrice is deeply angry at Rowan for saying he doesn’t care if their son finds love.
At home, Cinderella tells the mice she does love Robert but if saying yes to him is saying no to her dreams that she can’t go through with it. Vivian comes to see Cinderella and she hides the other slipper. She tells Cinderella that the prince is marrying another woman and is sad that she hoped one of her girls could marry him – she tells Cinderella she knows she’s hard on her. She sees her sketches and tells Cinderella how she was a gifted piano player and was offered an opportunity to train for a month, and when she did her husband told her real wives don’t act so frivolously.
She tells her that she doesn’t mean to be cruel, the real cruelty would be allowing Cinderella to think she could have something she can’t. One of the mice knocks the shoe out, and Vivian realizes it was Cinderella the night before. She is thrilled and tells Cinderella to go back to the prince and their whole family will be happy, but Cinderella says she’s made her choice. Vivian angrily tells Cinderella she will be taking her to Thomas as soon as possible and sings “Dream Girl”, a song about dreaming is fruitless and the only way out is to get married – she ends by playing the piano and emotionally singing the final words.
Rowan goes to Beatrice to try to make up from their argument the night before. She tells him he has changed since he became the king and how silenced she feels having to stand next to him and be silent. She tells him that they used to have love and Robert is wiser than them both. Later, Rowan tells Robert to find the girl he loves and marry her or not, it’s his choice. The Town Crier announces that the prince will be looking for the woman from the ball, and Robert searches the land.
Cinderella is sent away in Thomas’s buggy but jumps out of it to try to run and make her meeting with Tatiana. While running she sees Robert on his horse and trips and falls. He tells her that she taught him that he could choose his own life. He says he doesn’t want to be king and that choosing him would be choosing them. Cinderella kisses him and then Robert takes her on his horse to race her to her meeting. Meanwhile, Rowan sings at Beatrice’s window with his terrible singing voice – something he used to do when they were young – to apologize.
Cinderella meets with Tatiana and gets the job. Cinderella and Robert go to the royal family and tell them that they plan to travel the world and aren’t getting married right away – he knows it messes with the plans for succession, but Rowan says it’s alright and tells Gwen he is placing her first in line for the throne. Gwen addresses the kingdom and tells them the news. Beatrice gets to disagree with the king in front of everyone and then begins singing “Let’s Get Loud”. Soon everyone joins in for the finale. During it, Cinderella sees Vivian and sings to her that she should let herself be free and do things her way and Vivian joins her, singing powerfully, and they finally understand each other. Everyone celebrates and dances and the Fabulous Godmother says everyone lived happily ever after.