Podczas kariery piłkarskiej Gunnar Olsson występował w GAIS. Z GAIS zdobył mistrzostwo Szwecji w 1931. Ogółem w barwach GAIS rozegrał 122 spotkania, w których zdobył 45 bramek.
W reprezentacji Szwecji Olsson zadebiutował 6 listopada1932 przegranym 1-2 towarzykim meczu ze Szwajcarią. Był to udany debiut, gdyż Olsson już w 7 min. zdobył bramkę dla Trzech Koron. Ostatni raz w reprezentacji wystąpił 23 maja1934 w wygranym 4-2 towarzyskim meczu z Polską. W latach 1932–1934 rozegrał w reprezentacji sześć spotkań, w których zdobył 1 bramkę. W 1934 József Nagy, ówczesny selekcjoner reprezentacji Szwecji powołał Olssona na mistrzostwa świata. Na turnieju we Włoszech był rezerwowym i nie wystąpił w żadnym meczu.