Match ends, Scotland 1, Denmark 0.
Matt Richie capitalised on a misjudgement from Daniel Agger in the Denmark defence to hand Scotland victory at sparsely attended Hampden.
The Bournemouth winger scored after eight minutes, but Scotland were second best thereafter.
Craig Gordon's excellence in goal ensured a second 1-0 win in a row.
There were encouraging debuts for John McGinn, Kieran Tierney and, off the bench, the latter's fellow 18-year-old, Oliver Burke.
The newcomers and the result will have pleased Scotland manager Gordon Strachan.
It was fortunate, though, that Denmark created chances but were utterly hapless in putting one of them away.
Just as they did in Prague on Thursday night, Scotland struck early. And what a present it was.
When Scott Brown played an innocuous ball towards the Danish penalty area, it looked like visiting captain Agger had it under control.
But the former Liverpool defender attempted to usher it back to his goalkeeper Kasper Schmeichel, but wildly miscalculated.
As he waited for Schmeichel to come and deal with it, Ritchie nipped in, brushed him off the ball and put his shot away with ease.
Agger and Schmeichel had a bitter exchange, although it is debatable quite what the Brondby centre-back was complaining about.
The Danes came into it from there, Tierney's alertness in defence denying Yussuf Poulsen a shot on target from close range before Gordon saved from Nicolai Jorgensen.
Scotland's early brio had disappeared by now, being over-run in midfield and fortunate that Denmark were unable to do anything with the huge amount of possession they had.
The game was low on quality, accuracy and atmosphere - with a crowd of less than 20,000 - and surely it should have been played at Pittodrie or Easter Road or Tynecastle rather than the half-empty national stadium.
Leigh Griffiths had a hugely frustrating night, the Celtic striker being replaced after a joyless hour of chasing lost causes.
Griffiths did not have a crumb to feed on. Not a shot, not a header, not even a pass or a cross that gave him a chance to impress.
It was a night of nothing for the Scottish Premiership's most consistent goalscorer.
Scotland were a creative desert for much of the evening and Griffiths suffered badly.
The Danes continued to have large chunks of the game. Pierre Hojbjerg of Schalke fired over and then wide from distance while Christian Eriksen of Tottenham Hotspur put another long-range effort wide.
Scotland did not exist as an attacking force. They were pegged back and would have conceded were it not for a combination of Gordon's excellence and Denmark's rank profligacy.
With 17 minutes remaining, Gordon made a marvellous double save, beating away an initial shot and then recovering his ground to deny Martin Braithwaite from point-blank range.
Braithwaite looked mortified in the aftermath, knowing he should have scored.
Liam Bridcutt came on as a replacement and quickly launched himself into an horrendous tackle on Celtic defender Erik Sviatchenko for which he was lucky not to see red.
Scotland eventually found something in attack and it was only a superb block from Andreas Christensen from Ritchie that stopped Scotland doubling their lead, which in truth would have been a travesty.
The scoreboard was pretty enough for Strachan's team. The performance? An altogether different story.
- 4GreerBooked at 87mins
- 3TierneySubstituted forMulgrewat 45'minutes
- 7RitchieSubstituted forBurkeat 82'minutes
- 18McGinnBooked at 68mins
- 14MaloneySubstituted forBridcuttat 69'minutesBooked at 79mins
- 9FletcherSubstituted forAnyaat 45'minutes
- 10GriffithsSubstituted forMartinat 60'minutes
- 1SchmeichelSubstituted forLösslat 45'minutes
- 4AggerSubstituted forSviatchenkoat 64'minutes
- 10EriksenSubstituted forSchöneat 81'minutes
- 19N Jørgensen
- 20PoulsenSubstituted forBraithwaiteat 45'minutes
- Svein Oddvar Moen
- Shots on Target
Second Half ends, Scotland 1, Denmark 0.
Foul by Martin Braithwaite (Denmark).
Charlie Mulgrew (Scotland) wins a free kick in the defensive half.
Corner, Denmark. Conceded by John McGinn.
Martin Braithwaite (Denmark) wins a free kick on the left wing.
Foul by Steven Whittaker (Scotland).
Corner, Scotland. Conceded by Henrik Dalsgaard.
Attempt missed. Riza Durmisi (Denmark) left footed shot from outside the box misses to the right from a direct free kick.
Gordon Greer (Scotland) is shown the yellow card for a bad foul.
Henrik Dalsgaard (Denmark) wins a free kick in the attacking half.
Foul by Gordon Greer (Scotland).
Attempt blocked. Lasse Schöne (Denmark) right footed shot from outside the box is blocked.
Nicolai Jørgensen (Denmark) wins a free kick in the attacking half.
Foul by Liam Bridcutt (Scotland).
Pierre-Emile Højbjerg (Denmark) wins a free kick in the attacking half.
Foul by Chris Martin (Scotland).
Foul by Andreas Christensen (Denmark).
Chris Martin (Scotland) wins a free kick in the defensive half.
Substitution, Scotland. Oliver Burke replaces Matt Ritchie.