按照春秋時人的記述和本人是楚國公族的屈原說法,楚國先祖是黃帝之孫顓頊五世孫吳回(祝融氏)幼子季連,自季連開始姓羋氏,羋氏後裔鬻熊曾在商末做過羈押在商的周文王老師,因此周滅商後論功行賞,將遠在南方的鬻熊曾孫熊繹封為子爵之國。周初「五等爵」似乎是根據血緣、和王城距離的遠近、族裔等劃分的,比如公爵不是前朝王族就是本朝王族近輔,伯和侯似乎都是王畿以外的重要諸侯國,且伯爵多為同姓而侯爵多為異性,子爵系距離王城較遠的異族封國,男爵則是距離王城較遠的同族封國,楚國封地距離王城十分遙遠,且應已被排斥在「同族」之外,因此是子爵國。
這種情況很常見,比如同樣自稱大禹之後,陳國是侯,而越國只能是子,說明後者被排斥在同族外。特殊的例子則是吳國,它在檯面上是被承認為姬姓公族的,因此封爵是伯爵,而在夫差參加的黃池之會上,晉魯兩個公族諸侯承認夫差是「吳公」,但實際上《春秋》等同時代的諸侯史書,卻將吳國國君偷偷記錄為「吳子」,顯然不承認這個「短髮文身從本地俗」的政權是同族——更不要說公族了。回到楚國身上。楚和吳不同,不但遠,而且從一開始就被打入另冊,公然剝奪了自稱的血緣脈絡,而被算作「蠻夷」,對此楚國十分不滿,到了周夷王時代,楚子熊渠就順著周人邏輯,說「我蠻夷也,不與中國之號諡」,將自己的三個兒子分別立為王(長子康為句亶王,中子紅為鄂王,少子執疵為越章王),自己則成了「三王之父」。
儘管此後不久熊渠因畏懼周天子討伐,自己去了王號,他也並沒有自己稱過楚王,但此後楚國的民族自尊心大為振奮,一有機會就膨脹一下。此後不久,周宣王找藉口南徵楚國,結果宣王三十八年(公元前790年)在千畝之戰中慘敗,「南國之師」喪亡殆盡,從此周天子再未直接大規模伐楚。公元前771年犬戎攻破鎬京,殺死周幽王,第二年周平王被迫遷都洛邑,東周開始,王權衰落,楚國趁機猛攻周朝設立在漢水流域的隨國等周王室同姓小國,迫使其先後臣服,並促使這些小國向周天子請願,提升楚國的爵位——實際上是要求周朝將楚國納入中原諸侯範疇,消除「蠻夷」痕跡,但始終不能如願,楚國國君熊通一怒之下,在周桓王十六年(公元前704年)讓漢上諸國尊稱自己為王(楚武王),從此在名義上與周王室分庭抗禮。
但楚國的這個分庭抗禮是投機的,一方面,除了被他武力壓服的周邊小國,周天子和周天子分封的大國普遍不接受其王號,另一方面,楚國還和王室及諸侯保持著正常的外交關係,在正式場合仍然稱「楚公」、「楚子」,以換取諸如王室承認其霸權之類的好處,而對楚國既要敷衍又很無奈的周系統君臣,則用自欺欺人的「純愛蠻夷,不從王化」,來解釋楚國稱王而周朝不管(其實是管不了)的尷尬,這種尷尬直到戰國中期各諸侯國「相王」(互相承認彼此為王),才告一段落。春秋時期諸侯國、尤其同姓和中原諸侯國普遍不敢僭越稱王,但稱王的國家也絕非楚國一個,吳國從壽夢(吳王闔閭的祖父)起稱王,越國則從允常或勾踐起稱王,他們稱王的時代都在戰國開始之前,且比楚走得更遠,連諡號之類都免了。
如前所述,吳越和楚一樣,在和周王室、周系諸侯正式外交時,通常是自稱「吳公」、「越侯」之類的。