Not every role comes from a place of passion. Sometimes, even the biggest names on screen say “yes” because life off-screen leaves them little choice. Family responsibilities, bills, or a career slump have often been the deciding factor for these stars, and we didn’t expect it. Here’s a list of actors who took roles for money!
Ben Affleck – ‘Paycheck’

John Woo’s ‘Paycheck‘ seemed like a promising sci-fi thriller, but it became another misstep in Ben Affleck’s early 2000s career. Promoting the film on Late Night with Conan O’Brien, Affleck joked that the reason he made the movie was already in its title. Fortunately, Affleck’s career later recovered as he went into stronger roles and proved his skill as a director.
Daniel Craig – ‘No Time to Die’

After ‘Spectre,’ Daniel Craig was so exhausted by the demands of James Bond that he bluntly said if he did another one, it would only be for the money. Yet, contractual obligations and studio pressure brought him back for No Time to Die six years later. Craig also admitted the studio once suggested filming two Bond movies back-to-back, and he told them they were out of their minds.
Related: James Bond Was Pitched As A Woman Before 1962’s ‘Dr. No’
Rachel Zegler – ‘Shazam! Fury of the Gods’

Rachel Zegler’s rise to fame began with ‘West Side Story,’ where Steven Spielberg called her “extraordinary.” She won a Golden Globe and was even accepted as a breakthrough entertainer. But after the pandemic hit, opportunities dried up. At the premiere of Shazam! Fury of the Gods, Zegler openly admitted she accepted the role of Athena because she desperately needed work. She said the pandemic made it impossible to land jobs since ‘West Side Story‘ hadn’t yet been released. Though it was a paycheck-driven decision, her career has since bounced back with roles.
Alec Guinness – ‘Star Wars’

Though Alec Guinness is considered of Shakespearean pedigree, many modern fans know him only as Obi-Wan Kenobi in ‘Star Wars.’ Privately, Guinness didn’t respect the project. In letters later published, he referred to it as “fairy-tale rubbish.” Still, he admitted he would accept the role if the studio offered “proper money.” Not only was he paid a salary, but he also received 2.25% of the royalties.
Halle Berry – ‘Catwoman’

Despite winning an Oscar for ‘Monster’s Ball,‘ Halle Berry didn’t enjoy the same wealth of opportunities her white counterparts received. She admitted she often had to accept roles for financial reasons to support her children. When she won the unfortunate Razzie for ‘Catwoman‘, Berry accepted it with her Oscar in the other hand. The boss-lady move was only amplified when she thanked the studio “for putting me in this god-awful movie.” But she gave a shoutout to the money she made. The actress explained that while some films weren’t projects she adored, she tried to do each one of the roles with complete dedication.
Paul Bettany – MCU

Before Paul Bettany became Vision in the Marvel Cinematic Universe, he voiced Jarvis, Iron Man’s AI. He admitted he felt like a “pirate” during those early years, walking in for just two hours, reading a few lines, and walking out with what he described as a “bag of money.” In a 2012 interview, he said he felt guilty because other acting jobs required exhausting hours, while he barely broke a sweat. Later, when he evolved into Vision, he said he genuinely loved playing the role and would happily do it forever.
Harrison Ford – ‘The Force Awakens’

Harrison Ford’s Han Solo defined his career in the original ‘Star Wars‘ trilogy, which turned him into one of the biggest stars of the 1980s and 1990s. But decades later, when he returned for ‘The Force Awakens‘, he wasn’t so interested. During a 2015 appearance on The Tonight Show, Ford himself confessed that he did the role just for money.
In case you missed it: Top 15 Cult Classic Films That Were Box-Office Disasters
Michael Caine – ‘Jaws: The Revenge’

Caine once starred in ‘Jaws: The Revenge,’ and when asked if he had ever watched the film, Caine gave a twisted reply. Caine admitted he hadn’t watched the movie, but he had seen the house it bought for his mother. And, to him, both are the same. Leaving behind the glitz of Hollywood, actors face the same pressures most people do: financial uncertainty, family responsibilities, and career slumps. And, these things often force actors into roles they may not love but simply can’t afford to turn down.
Stephen Dillane – ‘Game Of Thrones’

Dillane, a Shakespearean-trained stage actor, played Stannis Baratheon in ‘Game of Thrones.’ Though the role was significant, he later admitted he found the series too brutal even to watch. He bluntly revealed that money was the main reason he accepted the role. He himself described his decision as a financial one rather than a creative pursuit.
Related: Top 10 Most Evil ‘Game Of Thrones’ Villains, Ranked
Sean Penn – ‘Carlito’s Way’

Penn has always been popular for his intense dedication to acting, but he admitted that his decision to join ‘Carlito’s Way‘ was financially motivated. In the early 1990s, he had a newborn daughter with Robin Wright, along with bills piling up. He recalled that director Brian De Palma called him late one night and offered him a role alongside Al Pacino. Penn said he needed the money at that point and, since the part was good and the co-star enticing, he took it.