Zac Efron underwent three weeks of intensive training in how to sail a boat. He proved to be so adept at it that no stunt double was required for him in most of the longshots of Charlie St. Cloud sailing.
The chief reason why Ray Liotta took on the film was his 10-year-old daughter, who was desperate to meet Zac Efron. A similar reason impelled Kim Basinger to take on the role of the mother, i.e., her daughter Ireland.
Lindsay Lohan was considered for the role of Tess, and even screen tested for the role. The producers decided to cast Amanda Crew instead when they realized Lohan was impossible to insure due to her ongoing legal issues and notorious reputation at the time of production.
Chris Massoglia was originally chosen to play an 18 year old version of Sam to be more faithful to the final scene of the book, but for reasons unknown, he was replaced by Charlie Tahan in the final film.
A bidding war for Ben Sherwood's novel broke out before it was published. Three studios were in competition for the rights with the ultimate winner being Universal who paid a figure rumored to be between $500,000 and $1 million.
If the film had been shot in the United States, Charlie St. Cloud could have dealt with Canadian geese at the cemetery, but because it was shot outside Vancouver, Canadian geese could not be used since they are a protected species. Real geese were used instead.
The green restaurant by the wharf named "Flynn's Reach" is actually the legendary "Molly's Reach" from The Beachcombers TV series in Gibsons, BC. It was temporarily renamed and painted green for the filming.