Casey (Jodi Foster) is a street-wise orphan from Los Angeles who is asked by con man Harry Bundage to pose as Margaret, the long-lost granddaughter of Lady St. Edmund (Helen Hayes), a kind, elderly and wealthy British woman who owns the grand manor of Candleshoe. Harry believes that a series of clues at Candleshoe will lead to a hidden gold treasure and Casey's job is to find the clues, decipher them and discover where the gold is while winning Gran's trust. Casey tries to remain unattached but as she spends more time at Candleshoe, she comes to love Gran and finds out that Candleshoe is actually in danger of being foreclosed on. The butler, Priory (David Niven) and Gran's foster grandchildren help with upkeep on the manor and keep Gran blissfully unaware of the dire financial situation.
After a successful day at the market where Casey, Priory and the kids make enough money to cover Candleshoe's taxes, Harry shows up and steals the money. Casey gives chase to try and get it back but she is injured in the scuffle. With the tax money gone, the manor is to be sold. Realizing that it will displace Gran and the foster kids, Casey confesses to why she is really at Candleshoe. With everyone's help, they search for the clues to the treasure and realize that it is hidden in a statue of Captain Joshua St. Edmund's at Candleshoe. When they arrive at the manor, Harry and his thugs are waiting. A fight ensues but the Candleshoe residents are triumphant when the Captain Edmund statues falls, causing Harry's gang to be trapped under the rubble. All the gold coins spill out of the statue and Candleshoe is saved.
Casey prepares to return to LA when Lady St. Edmunds essentially asks her to stay. Casey happily agrees but asks "What if your real granddaughter comes back?" to which Lady St. Edmunds replies "Perhaps she has."