The five-time world champion started from pole at the season-opening race but was pipped at turn 1 by the Finn and was never in contention as he quickly pulled away to beat the Briton by almost 21 seconds.
To rub salt in his wounds, Bottas also picked up an extra point for the fastest lap.
Hamilton, who was quickest in all three practice sessions and during qualifying, was gracious in defeat, but also struggling to know what went wrong.
“I had a pretty straightforward race today; I lost position at the start and my race was pretty much done and dusted after the first corner,” he said.
“Afterwards it was really about bringing the car home and bagging the points.
“I had to pit early to cover the pit stop from Ferrari, so I had a long second stint and drove super carefully to make sure I had tyres left at the end of the race.”
Autosport.com said Mercedes had discovered damage to the floor of Hamilton’s car following post-race checks, possibly caused by hitting debris or running across a kerb.
Team chief Toto Wolff had no immediate answers.
“For Lewis, it was a harder afternoon — the start was not as good as Valtteri, then we had to pit him earlier than ideal to cover the risk of being undercut by (Sebastian) Vettel,” he said.
“That gave him a long stint on the tyres and none of us knew if they would make it to the end, so it was hard to judge the right pace and he wasn’t happy with the car balance.
“My feeling is that it can be tricky to find the sweet spot with these new cars and tyres, and probably we didn’t manage that today with Lewis.”
Despite not getting the win he as aiming for, Hamilton said it was “an incredible weekend for the team”.
“I’ll bag the 18 points I got today, keep working and come back recharged for the next one,” he said.
“It was a really great weekend for the team and I’m really happy for everyone. We showed a great performance today and we need to continue to build on this — we have a long season ahead of us.”
Download our app and read this and other great stories on the move. Available for Android and iOS.