顧榮字彥先,吳國吳縣人,為江南顯族。祖父顧雍,在吳時任丞相。父顧穆,官宜都太守。顧榮精明開朗,弱冠之年便出仕為官,在孫吳朝任黃門侍郎、太子輔義都尉。吳國滅亡後,和陸機、陸雲兄弟一同到洛陽,當時人稱之為「三俊」。援例拜為郎中,歷任尚書郎、太子中舍人、廷尉正等職。常常縱酒豪飲,他對朋友張翰說:「惟有酒可以使人忘記憂愁,但不知治病如何?」
當時值趙王司馬倫誅滅淮南王司馬允,將司馬允的僚屬都交廷尉處置,準備都殺掉,顧榮公平地處置,許多人得以保全。司馬倫篡位後,他的兒子司馬虔為大將軍,任命顧榮為長史。當初,顧榮與同僚們宴飲,看到負責烤肉的人相貌不凡,並流露出想吃烤肉的神態,顧榮就割下一塊肉讓他吃。同座者問為什麼要給僕人肉吃。顧榮說:「哪能讓終日烤肉的人不知道烤肉的味道呢?」到司馬倫敗亡時,顧榮也被關押,將要被殺掉。而負責執行死刑的督率正是那位烤肉者,於是他放走了顧榮,顧榮得以倖免。
齊王司馬礒召顧榮為大司馬主簿。司馬礒專權驕橫,顧榮擔心禍及自身,整天飲酒,久醉不醒,不管政事,將實情告訴了朋友長樂的馮熊。馮熊對司馬礒的長史葛..說:「你們以顧榮為主簿,是為了提拔有聲望的人才,並委以重要事機,表示任人不分南北親疏,以使天下人心服。現在王府職權大事務繁多,這不是好酒之徒所能勝任的。」葛..說:「顧榮是江南極負盛名的人物,現擔任這個職務時間不長,不可輕易更換別人。」馮熊說:「可以換為中書侍郎,顧榮也不損失體面,而府中也可用真正能幹之人。」葛..同意了,請示司馬礒後,就改任顧榮為中書侍郎。顧榮到職後不再飲酒了。有人問他:「為什麼原來沉醉而現在清醒?」顧榮怕引起別人的疑心而獲罪,乾脆又飲起酒來。他在給州里楊彥明的信中說:「我擔任了齊王的主簿,常常擔心禍患及身,見到利刃和繩索,就產生自殺的念頭,只是別人不知道而已。」後司馬礒被誅,顧榮因討伐葛..有功,封為嘉興伯,轉太子中庶子。
長沙王司馬砬為驃騎將軍,又召顧榮為長史。司馬砬敗後,轉為成都王司馬穎的丞相從事中郎。惠帝幸臨漳時,以顧榮兼任侍中,派他拜謁洛陽陵園,正碰上張方據有了洛地,不能繼續前進,便退避到陳留。等惠帝西遷到長安,又征顧榮為散騎常侍,他看到天下混亂,不應徵召,於是返回故鄉吳縣。東海王司馬越在徐州聚集兵馬,又任命顧榮為軍諮祭酒。
廣陵相陳敏反叛,南渡長江,趕走了揚州刺史劉機、丹楊內史王曠,抗拒朝廷,佔領州縣,將自己的子弟親屬分派到各郡,結納各地豪傑,要像當年孫權那樣割據江東。任顧榮為右將軍、丹楊內史。顧榮幾次被拉進危險的境地,都以恭順謙遜來勉勵自己。當時陳敏要誅殺江南士人,顧榮勸說道:「中國遭逢喪亂,胡虜外族欺凌中原,太傅今天也不能重新振興華夏,百姓們將會滅族滅種。江南雖經石冰之亂,但人民尚得以保全。顧榮時常憂慮沒有竇融、孫權、劉備那樣的膽略和決策,以拯救受難的民眾。現在將軍有神武之謀略,有孫武、吳起一般的才能,其功勳已經顯著,勇敢謀略超過當今的任何人,擁有甲兵數萬,戰船如山積,長江上游雖還有數州之地,但很快就可傳檄而定。若是能委任信賴當地的君子士人,讓他們得以施展才華,不計較微小的怨恨,堵塞讒諂之口,則大事可成。」陳敏採納了他的意見,大量地任用當地的豪族士人。陳敏仍然讓甘卓出鎮橫江,將精銳之師都交給他指揮。顧榮暗中對甘卓說:「如果江東能成大業,我們一起來努力。然而你看事體和形勢有成功的可能嗎?陳敏只是一個普通的人,本來沒什麼大本領,政令反覆無常,無一定的計劃打算,再加上其子弟個個驕橫,肯定要失敗。可我們還安然為他效命,將來失敗之時,江西諸侯之軍把我們的腦袋裝在盒子裡送往洛陽,上面寫著逆賊顧榮、甘卓之首,那不光是自己性命完了,且為萬世之唾罵,現在不能不考慮呀!」甘卓聽從了他的勸導。第二年,周王己、顧榮和甘卓、紀瞻等人同謀起兵攻打陳敏。顧榮拆毀橋樑藏起舟船於南岸,陳敏率萬人出戰,不能渡江,顧榮揮動羽扇,敵軍四散潰逃。陳敏之事已平,顧榮回到吳縣。永嘉初年(307),徵召拜為侍中,赴召行至彭城,看到天下禍難已起,乘小船而返,其事記載於《紀瞻傳》中。
元帝鎮江東時,以顧榮為軍司,加散騎常侍,凡有所計劃決策,都詢問顧榮。顧榮既是江南名士,又處於尊貴的地位,朝野之人無不推重敬仰他。當時元帝所寵愛的鄭貴嬪身患疾病,元帝為她祈禱竟荒廢了朝政大事,顧榮上表勸諫說:「過去周文王父子兄弟三人都為聖賢,可以說是最明事理的人了。而文王忙得到太陽西斜還顧不上吃飯,周公一次沐浴中三次握發而出,他們為何這樣?都是因為一日之中,事情百緒千端,不可不理;一句話沒說好,也會引起嚴重後果的緣故呀。如今正值國家衰微,天下亂離,天子未能安居,豺狼遍佈道路,明公應該露營野外以置身艱辛之中,戴星而起勤於政事,像越王勾踐那樣敬怒蛙以求其勇士,懸苦膽於庭以自相節勵。貴嬪染病,以醫藥治療為上,祈禱之事,就算是有此必要,也不能不問部下的請奏,斷絕賓客的來訪問訊。當今強敵壓境,滿朝流言,人心浮動,或去或留紛紜不定。願明公謙虛禮讓以結納屬下,廣泛地招攬天下英才,考慮目前的緊要事項,放棄無用的鬼神祭祀,發揚繼承勤政的美德,以雪洗天下之恥,這樣百姓才有依靠,振興晉室才有希望啊。」
當時南方的士人未能人盡其才,顧榮又對元帝說:「陸士光貞正清貴,質如金玉;甘季思忠心盡誠,爽快直率;殷慶元行為規簡,有文武全才;我族中兄長顧公讓明節守禮,窮困不改節操;會稽楊彥明、謝行言皆篤行儒教,足負眾望;賀生隱居不出,是青雲之士;陶恭兄弟才幹雖不高,可辦事踏實認真。以上諸人,都是寶貴的人才。」此書奏上,元帝都予以採納。
永嘉六年(312),顧榮死於官所,元帝親臨致哀,準備上表,按齊王司馬礒的規格予以封贈。吳郡內史殷..上片戔說:
過去賊臣陳敏倚仗朝廷寵信和手握重權,滔天作亂,其兄弟親朋安置盤踞在各州各縣,威逼士人良民作他的臣僚,當時無論賢者愚者均毫無辦法。已故散騎常侍、安東將軍、嘉興伯顧榮以道德為本,深謀遠慮,其忠貞節操,越是危難卻越發堅定。在崎嶇艱險之中,在奸賊的逼迫之下,每念及朝廷社稷,悲憤慷慨。暗中結交心腹志士,共同謀求討伐逆賊。信義顯著於群士之中,名聲冠於東南之地,威德所振,大家無不響應,各地士卒紛紛投奔,會聚如林。顧榮親冒矢石、身先士卒,忠義奮發,為國忘家。經營數年的賊寇,一朝土崩瓦解,兵不血刃,平定六州,功勳超過了前輩,道義傳遍天下。
臣聽說將要依照齊王、大司馬司馬礒的規格來追贈顧榮,不把他列入參與了密謀籌劃國家大計的大臣之列,只和在州郡征戰之士相比,所以不能封爵封地,傳位於子弟,聽到這個消息,遠近為之驚歎,江東之人深感失望。齊王司馬礒為王室至親,位至一方統帥,持符節握重兵,都督京畿之兵,外有五國之援,內有宗室諸王之助,興兵連年,役累天下,雖建有大功,但造成的損失也相當巨大。顧榮兵無一旅,又非一方守宰,孤單地處於江東,王命不通,面臨危局而獨擋一面,以身殉國,不費國家錢財,不勞天下民眾,使賊首就戮,大功告成,封閉各地倉庫,等待王師到來,因此國安物富,萬民以義為俗,今天國家事業振興,不能說不是由此而開端。把他和齊王相比,強弱不同,優劣也不同。至於齊王府的參將佐吏,扶義助強,可並非是創謀大事的首領,他們都得到嘉獎,或封公或封侯。而顧榮帶頭密謀舉義,為一方之盟主,功勞高過其他將帥。賞賜卻低於那些下級佐吏,上違背了國家獎勵功臣的原則,下對不起忠勇義誠之士。
公正地考察臣下的功過,是王朝禮教所尊崇的法則。像顧榮這樣,濟難安國,順應天命率先行事,遍觀古今,還沒有立這般大功,卻只得到如此酬報的事例。
由於殷..的表章,於是追贈顧榮為侍中、驃騎將軍、開府儀同三司,謚號為「元」。元帝為晉王時,又追封為公、開國,享有食邑。
顧榮平素好彈琴,他死後,家人把琴放置在靈座上。吳郡張翰往吊哭得很傷心,接著登上座床彈奏了幾支琴曲,撫琴歎息說:「顧彥先還能欣賞樂曲嗎?」因此又痛哭起來,不再弔唁喪主而離去。顧榮之子顧毗嗣位,官至散騎侍郎。