商朝是否有奴隸制度一直極具爭議,不過當時確實有奴隸存在,在甲骨文中都被清楚記載,這些人通常是兩國打仗的戰俘,若能力出眾有機會脫離奴隸身分,但大多數人仍需當一輩子的奴隸,甚至成為「人牲」,變成祭祀的貢品,以殘忍的方式獻祭,下場十分悽慘。
甲骨文中表達奴隸意思的名詞主要有3個,分別是「臣」、「妾」和「芻」,其中「臣」的甲骨文像是豎著的眼睛,一般指男奴,大陸古文字學家郭沫若在《甲骨文研究》中指出,「人首俯則目豎,所以像屈服者之形者。」認為奴隸一直低著頭,眼睛才會呈現豎立的模樣;而「妾」的甲骨文像是受黥刑(在臉或額頭上刺字)的女子,一般指女奴;「芻」的甲骨文則像用手抓著草的模樣,本意為打草放牧,後引申為從事放牧的奴隸。
這些奴隸的來源,通常是兩個國家打仗後,贏的一方將年幼的戰俘擄回家做家奴,若本身能力較強,就有機會脫離奴隸身分,男的被用作管家,女的被收為妾室,所以後來「臣」字才有臣子、臣屬之意,「妾」則有妻妾的意思。
不過大部分的人可能一輩子都是奴隸,甚至被當作「人牲」,也就是祭祀所用的貢品,且祭祀的殘忍手法也都被還原在甲骨文字中,像是「伐」(砍掉頭顱)、「戠」(音同質,把人製成肉乾)、「卯」(把人劈成兩半)等字,悲慘的命運也導致有些奴隸想要逃跑。
甲骨文中有一篇卜辭記載了3000年前的一場「越獄」,一名臣透過水路逃跑,因為在船上躲藏太好,遲遲未被抓獲,貞人(商朝官職名稱,職務為占卜和刻辭)占卜時先問:「臣能被抓回來嗎?」占卜結果為「應該能抓獲」,最後真的在占卜後15天把臣抓了回來。