Начал заниматься футболом в 10 лет. После занимался в белградском клубе «Винча». Тренером там был Зоран Шарац. После одного из товарищеских матчей между «Винчей» и клубом «Црвена Звезда», посвящённой годовщине клуба «Винча», скауты «Црвены Звезды» заметили его и предложили присоединиться к команде.
На пятом году его присутствия в клубе на должность тренера младших возрастных категорий был назначен Владимир Пижон. В тот период он терял свои позиции в команде. В итоге всё реже участвовал в соревнованиях, перед ним встал вопрос — стоит ему продолжать свою карьеру в этом клубе? Когда тренер на вопрос отца «Почему Горан не играет в составе команды?» ответил, что в тот момент не рассчитывал на него и что он не имеет абсолютно никакой перспективы как футболист. Тогда он взял отпускной лист и ушёл из «Црвены Звезды».
В 1995 году начал тренироваться со своим первым клубом ФК «Винча». Тренером команды тогда был Зоран Крстич, который научил его выполнению свободных ударов. В том сезоне он занял второе место на командном уровне как стрелок с забитыми 26 голами.
В ФК «Чукарички» пришёл как юноша по приглашению Звонка Радича в 1996 году. В юношеской возрастной категории начал свою карьеру в клубе. Играя, освоил титул первого бомбардира команды с 16 забитыми голами. Руководство клуба заметило игровые способности, результатом чего явилось подписание первого в юношеской возрастной категории профессионального контракта между Гораном и первой командой ФК «Чукарички».
В 2000 году провёл один из лучших сезонов в чемпионате Сербии и Черногории. Тогда ему было сделано несколько выгодных предложений.
В январе 2001 года по приглашению легендарного тренера Валерия Лобановского перешёл в «Динамо» (Киев). Сумма трансфера — 2 000& 000 евро.
Горан легко приспособился к жизни в новом городе — Киеве, быстро выучил язык. В клубе играл как защитник. В сезоне 2002/03 завоевал трофей лучшего игрока обороны Украины, по оценке спортивного журнала «Команда».
Как показало время, Гавранчич внёс заметный вклад в игру и историю команды. За семь лет в Киеве выиграл четыре чемпионства, четыре кубка Украины, сыграл много матчей в Лиге чемпионов и Кубке УЕФА. Провёл за «Динамо» 136 матчей и забил 22 мяча.
В конце 2008 года перешёл на правах аренды в греческий ПАОК на полгода, хотя сам хотел отправится в аренду в «Црвену Звезду». На согласие перейти в ПАОК, повлиял его близкий друг Предраг Джорджевич, выступающий за «Олимпиакос». Спустя неделю после перехода, сыграл в первом официальном матче. В рамках 20 тура чемпионата Греции ПАОК принимал «Арис» и уверенно победил 3:0. Горан провел на поле все 90 минут. В новом клубе серб выбрал 30 номер.
В январе 2009 года подписал контракт с сербским «Партизаном» на правах свободного агента, контракт был рассчитан на 2,5 года.
Зимой 2010 года перешёл в китайский «Хэнань Констракшн», на правах свободного агента. В сентябре 2010 года игрок объявил об уходе из профессионального спорта, так как его замучили травмы.
Дебют в сборной состоялся 13 февраля 2002 года в матче Сербия и Черногория — Мексика (2:1). После этого участвовал в нескольких матчах, защищая цвет своей сборной. Несколько футболистов его возраста также вошли в число игроков национальной сборной. Выступал на чемпионате мира 2006 где Сербия и Черногория заняла последнее место в группе, уступив Нидерландам (1:0), Аргентине (6:0) и Кот-д’Ивуару (3:2). Всего провёл 31 игру за сборную.
Его отец Драгослав, мать Лилян. Женат на украинке Марине, с которой поженился 28 июня 2003 года в Киеве.