Colin Kaepernick, who plays with the San Francisco 49ers, remained seated as the anthem was played.
"I am not going to stand up to show pride in a flag for a country that oppresses black people and people of colour," he explained.
Some fans booed the player when he took to the field.
But his team said they supported his right to protest, which took place as the 49ers hosted the Green Bay Packers in a pre-season game on Friday.
US anthem and flag: Etiquette and law
"We recognise the right of an individual to choose and participate, or not, in our celebration of the national anthem," the team said.
An NFL spokesman said players were "encouraged but not required" to stand during the anthem.
Kaepernick has been outspoken on social media about race relations and is a supporter of the Black Lives Matter movement.
"To me, this is bigger than football and it would be selfish on my part to look the other way," Kaepernick told NFL Media.
"There are bodies in the street and people getting paid leave and getting away with murder.''
He appeared to be referring to police use of deadly force which sparked the Black Lives Matter protests.
A US National Football League (NFL) quarterback has refused to stand for the national anthem in protest at what he sees as racial injustice.