Né et élevé au Texas, Benjamin McKenzie Schenkkan a deux frères, Nate et Zack, plus jeunes que lui. Son père, Pete Schenkkan, est avocat à Austin et sa mère, Frances, écrit des poèmes. Après avoir obtenu son diplôme d'Economie et Affaires étrangères à l'Université de Virginie, le jeune homme part pour New York afin de réaliser son rêve de devenir acteur. Benjamin Schenkkan étant déjà pris par un autre comédien, il change son nom.
Fort de quelques expériences théâtrales à l'université, Benjamin se produit sur scène dans quelques spectacles dont "Life is a Dream". Mais son avenir l'appelle à Los Angeles où il décroche rapidement le rôle principal de Ryan Atwood dans Newport Beach. La série est un succès pendant quatre ans et le personnage devient rapidement culte. Fort de cette réussite, l'acteur est sollicité au cinéma pour quelques seconds rôles, notamment dans le thriller 88 minutes porté par Al Pacino. En 2009, il est le personnage principal de la série policière Southland, une plongée réaliste dans les rues dangereuses de Los Angeles.
Définitivement l'un des jeunes visages les plus connus du petit écran, Benjamin McKenzie est ensuite choisi pour se glisser dans la peau du courageux et tenace inspecteur James Gordon dans la série Gotham.