Butler est né à Paisley en Écosse, de Margaret, femme au foyer et d'Edward Butler bookmaker. Ses arrière grand-parents étaient d'origine irlandaise. Éduqué dans une famille ouvrière catholique, il passe ses deux premières années à Montréal, au Québec. Au divorce de ses parents, Butler suit sa mère, qui repart en Écosse avec sa soeur Lynn et son frère Brian.
Arrivé à la vingtaine, Butler rejoint le Scottish Youth Theatre.
Butler passe ses examens avec succès à la School of Law de Glasgow, avant d'entamer une carrière sur les planches. Son premier rôle est celui de Coriolan, dans une version théâtrale de
Trainspotting.
Très vite, Butler se tourne vers le cinéma et obtient un premier rôle en 1997, dans le film La Dame de Windsor, en tant qu'Archie Brown. La même année, il joue un rôle mineur dans le James Bond Demain ne meurt jamais. S'ensuivent différentes apparitions dans des séries tv britanniques et différents petits rôles dans La Cerisaie, One More Kiss et Harrison's Flowers.
En 1999, il commence la mini-série Attila le Hun, en tant qu'Attila. Durant le tournage du film, la production est arrêtée pour que Butler puisse tourner son second rôle-titre, Dracula, dans le film de Wes Craven Dracula 2001. Les films sortent tous deux en 2001. À cette époque, Butler jouit d'une bonne renommée au Royaume-Uni, grâce notamment à la série The Jury.
En 2003, Butler partage la vedette avec Billy Connolly (ils ont déjà joué ensemble dans La Dame de Windsor) dans le film
Prisonniers du temps. Basé sur le livre de Michael Crichton du même nom, Butler y joue l'archéologue Andre Marek.
De plus, en 2003, Butler connait un succès plus « grand public » avec le film Lara Croft : Tomb Raider, le berceau de la vie, avec Angelina Jolie. Début 2004, il participe au film de Joel Schumacher Le Fantôme de l'Opéra, avec Emmy Rossum, Patrick Wilson et Ciarán Hinds.
En 2005, il est la star du film Le Match de leur vie, basé sur l'histoire vraie de l'équipe de football américaine qui battit l'équipe d'Angleterre à Belo Horizonte, au Brésil, en 1950. La même année, il est engagé pour jouer Beowulf dans le film de Sturla Gunnarsson Beowulf & Grendel.
Entièrement filmé en Islande, Beowulf & Grendel sortit principalement au Canada, avec un succès mitigé. Durant le tournage du film, Butler participa et coproduisit le documentaire Wrath of Gods, expliquant les difficiles conditions de tournage auxquelles l'équipe eut à faire face.
Fin 2005, Butler tient le rôle principal dans le film
300, de Zack Snyder. Le film suit le roi Léonidas lors de la bataille des Thermopyles, en 480 avant J.-C. Le film, entièrement réalisé en images de synthèse (tout comme le film Sin City) remporte 456 068 181 $ dans le monde ; le film détient le record de fréquentation en Grèce, avec 325 000 spectateurs en quatre jours. Butler gagne différents prix pour son interprétation.
En 2006, Butler rejoint le casting du film Le Chantage, aux côtés de Pierce Brosnan. Plus tard, il commence le tournage de
P.S. I Love You, avec Hilary Swank, succès critique ; le film sort en décembre 2007.
En avril 2008, sort le film L'Île de Nim, où Gerard Butler joue, avec Jodie Foster, différents rôles et peut utiliser son accent naturel écossais.
Ensuite, Butler apparaît dans le film RocknRolla, de Guy Ritchie, où il joue le rôle d'un gangster écossais. En juillet 2009, Butler joue dans la comédie romantique L'Abominable Vérité, avec Katherine Heigl.
Le 4 septembre 2009, est sorti un film dont Butler tient le rôle principal, Ultimate Game.
En 2010 il joue aux côtés de Jennifer Aniston dans la comédie romantique Le Chasseur de primes d'Andy Tennant.