The awards, organised by France Football, are based on voting by a panel of journalists from the top 100 Fifa-ranked nations.
Each journalist selects 10 players from a list of 30 nominees, placing them in order from 10th to first.
Galvao Bueno, one of the biggest Brazilian sports commentators, posted a video in his YouTube channel, with over a million of followers, criticising the selection methods.
“It’s not just a matter of football, of who plays better; this award has a European bias,” he said.
Bueno added that Vinicius did not win because of his battle against racism, and that his story “causes discomfort”.
“It was a close victory, it wasn’t decided by much,” Vincent Garcia, editor-in-chief of France Football, told French newspaper L’Equipe.
“Vinicius probably suffered from the presence of Bellingham and Carvajal in the top five because, mathematically, it took away a few points.
“It also sums up Real’s season which was carried by three or four players and the judges shared their choices between them, which benefited Rodri.”
Commentators, however, strongly disagreed that winner Rodri had performed better than Vinicius this year.
“The fact that Vini Jr wasn’t awarded the title of best player in the world at the Ballon d’Or is yet another way to try to penalise the Brazilian for his outspoken stance on racial issues, both on and off the field,” wrote Douglas Ceconello, a journalist for Globo Esporte, a sports website in Brazil.
Following the Ballon d’Or results, Vinicius posted a message on X which said: “I will do it 10 times if I have to. They are not ready.”
His post received over 100,000 comments, with many Brazilians showing their support.
Brazil’s minister of racial equality, Anielle Franco, reacted to the message and said: “You are amazing, Vini! Racism will never stop us. Let’s keep making history.”