Густаф родился 12 ноября 1980 года в семье знаменитого шведского актёра Стеллана Скарсгорда и врача Май Скарсгорд (урождённая Мэй Сонья Мари Агнес). У Густафа есть четыре брата (Александр Скарсгорд (род. в 1976, тоже актёр), Сэм Скарсгорд (род. в 1982), Билл Скарсгорд (род. в 1990), Вальтер Скарсгорд (род. в 1995)) и одна сестра Эя Скарсгорд (род. в 1992).
Свою первую роль в кино сыграл, когда ему было девять лет в фильме «T?cknamn Coq Rouge» (Эрик Гамильтон). Отец Густафа играл в этом фильме главную роль. С 1999 по 2003 обучался в Стокгольмской академии театрального искусства (швед. Teaterh?gskolan). С 2003 года работал в театре, играл главные роли во многих постановках («Венецианский купец»). Продолжая играть в театре, принимал участие в ряде телевизионных постановок, а так же снимался в кино. Самая известная роль Густафа в 2002 году в фильме «Невидимый» (швед. Den osynlige). В 2003 году снялся в фильме «Зло», который номинировался на премию «Оскар». В 2007 году был удостоен премии «Золотой жук» (шведский аналог премии «Оскар») за фильм «Дети окраин», а также дважды был на неё номинирован: в 2004 году за участие в фильме «Зло», и в 2009 за фильм «Патрик 1,5».