Which actor played Norman Bates in Psycho?

The story behind the answer

Anthony Perkins played Norman Bates in Alfred Hitchcock’s “Psycho.” His performance as the shy, unsettling proprietor of the Bates Motel became one of the defining portrayals in horror-film history.

“Psycho,” released in 1960, was adapted from Robert Bloch’s 1959 novel, but the film changed important aspects of Norman’s characterization. Screenwriter Joseph Stefano and Hitchcock made him younger and more outwardly sympathetic, allowing Perkins’s hesitant manner and nervous charm to conceal the danger beneath the surface.

The film’s story begins with Marion Crane, played by Janet Leigh, who stops at the isolated Bates Motel while fleeing after stealing money. Norman’s relationship with his domineering mother becomes central to the mystery, while private investigator Milton Arbogast is played by Martin Balsam and Marion’s lover Sam Loomis by John Gavin.

A frequent mix-up is assigning Norman Bates to another cast member. Janet Leigh plays Marion Crane, Martin Balsam plays Arbogast, and John Gavin plays Sam Loomis; Perkins is the actor associated with Norman in Hitchcock’s original film and its three sequels.

Source: Wikipedia · fact-checked Aug. 2026

Add question to a list

Choose a list to keep this question in: