Messi, 27, was named the tournament’s best player despite a 1-0 defeat to Germany in the final on Sunday in Rio de Janeiro.
“I was a little bit surprised when I saw Messi coming up to collect the best player of the competition,” said Blatter, who presented the award.
Argentine legend Diego Maradona has also called the award “unfair”.
The Golden Ball and other individual prizes, such as the Golden Glove award for the best goalkeeper, are voted for by Fifa’s Technical Study Group, a panel of analysts including former Liverpool manager Gerard Houllier.
Blatter said he believed Messi was awarded the prize on the strength of his performances in the tournament’s group stage, where he scored four goals.
“If you compare the beginning of the tournament and why finally the Argentina team got into the final, they were decisive and I think it was a decision [based on that],” he said.
However, Messi failed to score any goals in the knockout stages despite his team’s run to the final.
The player was unmoved by the accolade, telling Spanish newspaper AS: “Right now I don’t care about the prize. I don’t care about anything. I wanted to take Argentina to the World Cup for all the people.”
Maradona also questioned the decision to give Messi the award, and blamed “marketing people” for the controversial choice.
“I could see he didn’t want to go up and collect it,” said Maradona, who was named the best player when Argentina won the World Cup in 1986.