Nine-year-old Olivia Tate and her mother, Regina, stood on a Portland, Maine wharf in May 1871 to wish their father good luck on his Atlantic voyage. Samuel Tate was Portland's finest and wealthiest shipping captain. But several months later, after a terrible storm, his body lay on deck. Two ships' boys are accused of foul play and first mate Edmund Percy holds them prisoner in the brig until they dock in England. But the boys escape and are never heard from again.
Meanwhile, Regina foolishly spends the family money, until within a year she and her daughter are nearly destitue. As recourse and also to fulfill her lifelong acting dreams, Regina sells the house and takes her daughter to the Portland Theatre, a gorgeous and highly successful theater in Portland's East End. The women live in the garret and Olivia becomes best friends with the director's daughter, Hetty Marshall.
The story opens in January 1881, nearly ten years since Captain Tate's death. Regina's financial habits have not improved and she's also become addicted to laudanum. Olivia does her best to take care of them and has also grown into a beautiful, if passive and daydreamy young woman. She is friends with a kindly scene carpenter named Nate Westland, who unfortunately is involved with the leading diva, Maxine Gilbert. Olivia does not have her mother's passion for acting, so she plays flute and sews some of the costumes. She dreams of escaping poverty and the theatre, but doesn't know how to do it.
One cold winter morning Olivia is fetching water from the well behind the theatre and a handsome rich stranger in a top hat and cloak helps her. Later that same day, a letter arrives letting Olivia and her mother know their rent for two months is paid, in exchange for both of them starring in prominent roles in the spring show. Neither Olivia nor their mother know what to make of it, but for now, their financial troubles are appeased.
The mysterious stranger turns out to be the cold and distant Julian Sterling, a British landowner of considerable property. The whole theatre is instantly abuzz with gossip about him and Regina especially encourages Olivia to stir his affections. Hetty, now one of the theatre's best actresses, warns Olivia against him, but she is young and enamored of his attention. Having purchased the Portland Hotel along with his assistant, Chester Port, Julian Sterling comes to every rehearsal.
Olivia is not a fan of acting, but the show (a variety vaudeville-type show) goes on. Though Julian doesn't pay any undue attention towards her, she can't help daydreaming about a life of luxury. Hetty confesses that Julian puts enormous pressure on her father and she's starting to hate him for it. But Maxine, Regina and Nate's sister Fanny Westland can't get enough of him. Olivia also dodges Chester Port's attentions, since he is quite lustful and goes after the ladies.
One night, Chester catches Olivia off guard and starts to grope her. But Julian comes along and saves her. Olivia projects gallant rescuer fantasies onto Julian and believes herself in love. Maxine returns Chester's attentions, much to Nate's chagrin. Meanwhile, Olivia receives a special gift of a new necklace. Maxine teases her and puts her down for thinking Julian could possibly like her since she is so poor and has no honest family connections.
Olivia goes out to the doctor to get more 'medicine' (laudanum) for her mother. On her way back, Julian stops her in the street. He starts to ask her about her mother, but then Chester shows up. He whispers something to Julian, who suddenly looks pale and dismisses Olivia. Heartbroken, she realizes Maxine must be right and returns to the theatre in tears.
Nate finds Olivia, who is crying backstage. He cheers her up and also says that Captain Edmund Percy has just returned to Portland. Nate's dream is also to leave the theatre and become a carpenter on Percy's ship. Olivia doesn't want to go to sea. Hetty also shows up, looking for Olivia. Julian wanted her to deliver another gift to Olivia from Julian, which she delivers. But she also secretly goes to her father to tell him her suspicions about Julian's motives.
Detective Vernon Upham arrives at the theatre to investigate both Julian and Chester. Olivia is uncooperative when questioned and encourages Upham to leave him alone. Upham questions others, but all he gets is gossip.
Regina is falling ill due to her laudanum addiction and the demands of her leading role. Olivia summons the doctor, who advises Regina to rest and not take any more medicine. Instead, Regina ignores the advice and spends extra time with Walt Sanders, the show director, to rehearse.
Chester is curiously absent during the final week of rehearsals, but Julian is definitely present. Afterwards, he asks questions about Olivia and invites her to the hotel, though she is reluctant to leave her ill mother.
The night before opening night, Maxine has disappeared. Julian finds Olivia after rehearsals and takes her to one of the box seats. He kisses her, and Olivia is over the moon. She believes he'll truly rescue her and asks him to take her away. He says he will after their performance and is surprised to learn she didn't want to become an actress. She wants nothing to do with theatre. Nate shows up at the box asking about Maxine, but Julian won't tell him. Nate sees the connection between Olivia and Julian and after Julian leaves, he tells Olivia about something strange he saw earlier that day:
While Nate was chatting with Captain Percy about his next voyage, Julian walked by. Both men shared a look and their reactions were subtle but noticeable. Julian vanished into the street's crowd and Captain Percy confessed to Nate that he looked so familiar. Nate thinks Julian is not all he seems and may have nasty motives.
Olivia is angry with Nate for spoiling her happiness and accuses him of just wanted to be with Maxine and not thinking for himself. Nate is hurt by her anger and leaves. He was trying to help his sister Fanny find Maxine.
The day of the show, Regina is very ill. Olivia comforts her by telling her Julian loves her and will save them both. Regina can't perform without the laudanum, so Olivia reluctantly goes to the doctor to get it.
Outside in the street, she sees Detective Upham talking to Captain Percy. Percy asks Olivia if Julian will be at the performance that night. Olivia is torn between lying and the truth, and chooses to lie. She tells both men Julian will be at his hotel with Chester Port. Upham warns her he'll be watching the show.
Olivia returns with the laudanum and she and her mother prepare for the show. Walt is frantic since Maxine hasn't shown up, but suddenly she appears, looking haggard and confused. She barely recognizes Nate and locks herself in her dressing room. Nate wishes Olivia luck during the performance, and Hetty wishes her luck too, telling her she's a fool for loving Julian Sterling when Nate has a better character and has secretly loved her for years. Olivia only thinks of Julian and doesn't see him before the show.
The show begins. Maxine does reasonably well, and Regina is incoherent and looks sickly. Olivia gives it her best, but spends much of her time on stage searching for Julian in the audience.
During the intermission, Regina collapses backstage. Nate and Olivia try to revive her, and just then Chester Port appears. Maxine looks desperately frightened. Fanny and Olivia try to fend off Chester, but he throws money at Maxine, calls her a whore, and leaves. The color drains from Nate's face, as he realizes Maxine has spent the past day with Chester.
Regina recovers enough to perform in the second act, but she is dying. Olivia has a hellish second act, trying to take care of her mother and worrying about Julian. But Maxine brings the house down with her depiction of real pain.
Right after curtain call, Regina collapses again. Fanny is sent to find Maxine, who has disappeared again. When she returns, Nate confronts her and she is forced to tell him that his suspicions are correct. Chester and Maxine have been together at his hotel for the past day. Nate helps Olivia carry Regina to a dressing room then leaves for the doctor.
Julian appears at the dressing room and gives Olivia a passionate kiss, asking for her forgiveness. He no longer seems cold and distant. Nate arrives with not only the doctor, but the detective and Captain Percy. Upham accuses Julian of such a horrible deed that Regina is horror-stricken and dies of shock. Julian tries to apologize, but is led away in handcuffs. After he leaves, Olivia discovers a velvet pouch full of banknotes.
Several days later, Olivia lays her mother to rest beside her father in Eastern Cemetery. Nate apologizes for helping bring Julian to justice, but it had to be done. Captain Percy is sailing on May 1st and Nate will join him. He finally tells Olivia he loves her and wants her to come. Olivia doesn't know, but Nate understands.
Olivia goes to the jail to see Julian for the last time. He tells her all the details of his crime and wanted to help her, but didn't know he'd fall in love with her. He didn't want to be captured and evaded Captain Percy and Vernon Upham. Olivia can't save him and she didn't fall in love with him as a person. She gives him one final kiss and leaves.
Nate waits on the wharf, beside Captain Percy's ship, the "Legacy." Olivia approaches him and he asks if she wants to follow in her father's footsteps. Olivia says she wants to make this choice herself. They share a sweet kiss and walk hand-in-hand towards the ship.