The film takes place in South Africa around the time of Nelson Mandela's release from jail (1990). It chronicles 14-year-old John Milton's (Troye Sivan) first year at an elite boarding school for boys.
When John arrives for the first time at the school, he gets nicknamed "Spud" by the other boys because he was yet to experience puberty. All eight boys in his dormitory get nicknames. They are also called the "Crazy Eight". Spud finds it difficult to make friends and fit in. He befriends Mr Edly, a teacher nicknamed "The Guv", after he is the only one in the English class to pass an exam. The Guv frequently lends English literature books to Spud and invites him to lunch regularly. But Spud soon realises that Edly has marital problems, and is an alcoholic.
While back at home for the holidays, Spud falls in love with Debbie, the daughter of one of his mother's friends, whom he nicknames "The Mermaid." When Spud returns to the school, he sees a flyer for the school play Oliver Twist. Spud decides to audition so he can fit in. He ends up landing the lead role of Oliver. During practice, Spud meets Amanda, a girl from the nearby school St. Catherine's, and immediately falls for her. But he soon realises that she has a boyfriend already, and he cannot form a relationship with her without cheating on Debbie, whom he still loves. He seeks the advice of his roommate Gecko, who tells Spud to pretend he loves another girl named Christine, in order make Amanda jealous.
Spud and Gecko begin to build a strong friendship and they occasionally visit a rock at the top of the hill near the school. In the fourth term, Gecko is diagnosed with cerebral malaria that he got during his holiday to Mozambique. A few days later he passes away. Spud mourns the death of Gecko and the whole school attends his funeral service in the school's chapel.
In the end, Spud performs in the school's play and gets a standing ovation. After the performance, he is dragged away from the post-performance celebration by Amanda, and they go to a nearby field. There, she tells him to kiss her. Spud, however, stops at the last moment and rejects her, deciding to stay true to Debbie. He offers to give Debbie a tour of the school, and kisses her in the middle of the quadrangle, which his dorm-mates witness from their window. After he returns, he is praised by the group, and finally fits in. The film ends with Spud, on the final day of the year, sitting on the same rock he and Gecko used to frequent overlooking the school, and remarking that "God gives us choices. But sometimes, God gives us no choice. He deals us the cards, and we play them."Troye Sivan as John "Spud" Milton
John Cleese as Mr "The Guv" Edly, an alcoholic English teacher
Tanit Phoenix as Mrs. "Eve" Wilson
Jeremy Crutchley as Mr Glockenshpeel ("The Glock")
Jamie Royal as Henry "Gecko" Barker
Sven Ruygrok as Robert 'Rambo' Black
Josh Goddard as Charlie 'Mad Dog' Hooper
Thomas Burne as Vern "Rain Man" Blackadder
Byron Langley as Simon Brown
Travis Hornsby as Alan "Boggo" Greenstein
Blessing Xaba as Sidney "Fatty" Sibeko-Scott
Aaron McIlroy as Mr Milton, Spud's father
Julie Summers as Ms Milton, Spud's mother
Genna Blair as Debbie "The Mermaid"
Jason Cope as Mr "Sparerib" Wilson, Eve's husband
Charlbi Dean Kriek as Amanda
Alex McGregor as Christine
Graham Weir as Mr 'Viking' Richardson
Siobhan Hodgson as Mrs Roberts
Ryan Mayne as Julian
James Murray as Bert
Darren Frances as Pike
Ricky Cruz as Devries
Sylvaine Strike as San Sister
Lehasa Moloi as P.J. Luthuli, head boy of Michaelhouse
Brenda Ngxoli as Innocence, the Miltons' house maid
Terry Norton as The Guv’s wife
Christine le Brocq as Mrs "Wombat" Milton, Spud's grandmother
Ben Voss as Mr. Lily
Patrick Kenny as Reverend Bishop
Shaeleen Tobin as Marge, The Mermaid's mother
Liam Magner as "Hairy Gavin"
John van de Ruit as Mr Lennox
Laura Santoni as the Librarian
The film is entirely privately financed by South African investors, giving the filmmakers full creative control.
Auditioning began in August 2009 and took place in Durban, Pietermaritzburg, Cape Town, Johannesburg, and Grahamstown. Audition videos were also accepted via YouTube. Hundreds of boys were auditioned for the role of Spud. Producer Ross Garland's uncle saw South-African born Australian actor Troye Sivan on Australian television and wrote to Garland about him. Van de Ruit described Sivan as "exactly the way I pictured Spud." Sivan who has been singing professionally since he was nine does his own singing in the film.
The filmmakers initially thought Jason Cope would be too young to play Sparerib but Garland said he "turns into a nasty housemaster as soon as he steps on set." Cope based his performance on a vice principal he once had.
Filming commenced on 8 March 2010 at the Michaelhouse boarding school in KwaZulu-Natal, South Africa and ended on 18 April 2010.
The film was released on 3 December 2010 in South Africa, a week before the beginning of the December–January holidays for South African public schools. Garland and Van de Ruit have written a book about the making of the film which was released alongside the film. In its opening weekend, the film grossed an estimated R2.9 million. The film has received mainly positive reviews. Rory Tyson, the national sales manager for Nu Metro Films, called it "a success", "a national phenomenon" and "about 50% bigger than expected".
The film has experienced some controversy around some of its content as Justice Edwin Cameron of the Constitutional Court sent to Spud producer Ross Garland a letter saying that he saw in particular two scenes as "denigrating gays and lesbians". In one of these scenes "The Guv" played by John Cleese says that he would like to give all lesbians a good "rogering". The second scene is one in which the gay art teacher, coaching the school's worst rugby team, tells them that "more pressure from the rear" is needed.
Producer Ross Garland said in a statement: "In the five years since Spud was published, and with millions of people having read the book and seen the movie, Justice Cameron is the first person to ever publicly take the view that the film is homophobic [...] With readers and audiences across the country being moved by the story of a vulnerable boy who learns to find his own voice and thereby overcome the bullying and bigotry at his school in 1990, it is hard to fathom how Justice Cameron arrived at his opinion."
Spud won the South African Film and Television Award for Best Editor (Megan Gill) and was nominated for five other SAFTAs, including Best Cinematographer (Lance Gewer), Best Sound Designer (Barry Donelly), Best Feature Film, Best Lead Actor in a Feature Film (Troye Sivan), and Best Supporting Actor in a Feature Film (Jamie Royal).
A sequel, titled Spud 2: The Madness Continues was released on 21 June 2013. A second sequel, Spud 3: Learning to Fly, began filming on 22 June 2013 and was released on 28 November 2014 in South Africa.