As the last vestige of the Saiyan race, Goku and Vegeta share a special kind of brotherhood. As a part of this equation, Vegeta doesn't even refer to Goku by his chosen name, opting to call him Kakarot instead. A lot of fans have wondered about this for years and there's quite a simple explanation for this.
Additionally, Vegeta does not seem to be the only one who addresses Goku as Kakarot which begs the question as to why. Here is what the fandom has found out after years of research.
A look into why Vegeta calls Goku Kakarot
One thing fans know about Vegeta is that his Saiyan pride is close to his heart. His pride is what comes into play when addressing Goku as Kakarot. Even though most people know and recognize him as Son Goku, that is not his birth name. He got that name from his guardian Son Gohan, whom he later named his son after.
Goku's birth name is actually Kakarot, given by his father Bardock and mother Gine. For Vegeta, Goku is possibly the only constant reminder of everyone he lost. He has also known Goku from before they met for the first time in Dragonball Z, and knew him as Kakarot.
According to the fandom, it seems that as a measure of upholding their Saiyan traditions and pride, Vegeta calls Goku Kakarot. He seems to think that Goku is actually an inconsequential Earth name that does not suit a Saiyan at all.
Who other than Vegeta calls Goku Kakarot?
Although fandom is familiar with Vegeta referring to Goku as Kakarot, a few other characters refer to him in the same way. The first time fans hear the name Kakarot is at the beginning of Dragon Ball Z and by none other than Goku's brother, Raditz.
Other than him, Nappa also seems to call him Kakarot rather than Goku. It can be concluded that Saiyan's take their nomenclature quite seriously and do not deviate from their birth names.
Thankfully for fans the adventures of these Saiyans are still as thrilling as ever in Dragon Ball Super and more such pieces of lore continue to be revealed.