Match ends, Brentford 1, Rotherham United 0.
Rotherham United slipped closer towards relegation from the Championship with defeat at Brentford, who are already certain of a play-off place.
Bryan Mbeumo scored the game's only goal before half-time, glancing Sergi Canos' teasing cross into the corner.
The Millers remain four points adrift of 21st-placed Derby County with one game in hand, meaning they will now have to rely on other results if they are to stay up.
Paul Warne's side have been playing catch-up in recent weeks after a series of postponements earlier in the campaign because of two Covid-19 outbreaks in the squad left them with several games in hand.
But they have squandered their opportunity to reel in Wayne Rooney's Rams, taking only four points from a possible 27 during a manic April fixture list.
Despite a bright start against the Bees, who are third in the table, Thomas Frank's men took control after Mbeumo's well-taken opener.
Canos twice missed chances to double their lead, shooting straight at goalkeeper Jamal Blackman before dragging another attempt wide of the near post.
Ivan Toney also went agonisingly close to a 30th goal of the campaign, thumping the foot of the post after going through on goal at the end of the first half.
Toney had a second-half header saved by Blackman, who also kept out a curling shot from Emiliano Marcondes.
Michael Ihiekwe saw a 92nd-minute header saved by Brentford keeper David Raya before Marcus Forss spurned a chance to make it 2-0 at the death when he flashed a shot narrowly wide.
The Bees extended their unbeaten run to 10 matches with victory to move four points clear of fourth-placed Bournemouth.
Brentford head coach Thomas Frank:
"It's important that we build momentum at this stage of the season and it was a hard-earned win.
"We are starting to see new relationships grow on the pitch at just the right time.
"We had to fight and for the first 25 minutes we couldn't get control of the game.
"But one bit of class and brilliance from Sergi Canos and Bryan Mbeumo with the header changes the game."
Rotherham boss Paul Warne:
"The schedule has caught up with us but we will keep going. It is absolutely exhausting and I don't know how the players are doing it.
"It feels like we've played a quarter of a season in a month and the sad thing is, if you are winning every week you feel a million dollars but when you lose you lick your wounds and they get deeper.
"I can't knock the lads' effort and I was very proud of them. On another day we might have nicked one at the end.
"I feel for my group and myself that we haven't got our just rewards, but we will go to the end."
- 29Bech Sørensen
- 20GhoddosSubstituted forForssat 74'minutes
- 27JaneltSubstituted forJensenat 89'minutes
- 7CanósSubstituted forFosu-Henryat 74'minutes
- 19MbeumoSubstituted forBidstrupat 74'minutes
- 6WoodSubstituted forLadapoat 66'minutes
- 19HardingSubstituted forHirstat 76'minutes
- 8WilesSubstituted forSadlierat 85'minutes
- 16LindsaySubstituted forBarlaserat 76'minutes
- 11OgbeneSubstituted forOlosundeat 76'minutes
- Michael Salisbury
- Shots on Target
Second Half ends, Brentford 1, Rotherham United 0.
Attempt missed. Marcus Forss (Brentford) right footed shot from the centre of the box is close, but misses to the left. Assisted by Ivan Toney.
Attempt blocked. Kieran Sadlier (Rotherham United) right footed shot from outside the box is blocked. Assisted by Lewis Wing.
Attempt saved. Michael Ihiekwe (Rotherham United) header from the centre of the box is saved in the centre of the goal. Assisted by Daniel Barlaser with a cross.
Corner, Rotherham United. Conceded by Ethan Pinnock.
Corner, Rotherham United. Conceded by Charlie Goode.
Substitution, Brentford. Mathias Jensen replaces Vitaly Janelt.
Ivan Toney (Brentford) wins a free kick on the right wing.
Foul by Ryan Giles (Rotherham United).
Substitution, Rotherham United. Kieran Sadlier replaces Ben Wiles.
Attempt saved. Emiliano Marcondes (Brentford) right footed shot from the left side of the box is saved in the centre of the goal. Assisted by Ethan Pinnock.
Attempt missed. Mads Bidstrup (Brentford) right footed shot from the left side of the box is too high. Assisted by Tariqe Fosu-Henry.
Tariqe Fosu-Henry (Brentford) wins a free kick in the attacking half.
Foul by Lewis Wing (Rotherham United).
Offside, Rotherham United. George Hirst tries a through ball, but Freddie Ladapo is caught offside.
Attempt blocked. George Hirst (Rotherham United) right footed shot from outside the box is blocked.
Substitution, Rotherham United. Matthew Olosunde replaces Chiedozie Ogbene.
Substitution, Rotherham United. George Hirst replaces Wes Harding.
Substitution, Rotherham United. Daniel Barlaser replaces Jamie Lindsay.