Hungary capitalised on a mistake from Niall McGinn to edge out Northern Ireland 1-0 at Windsor Park.
Dundee winger McGinn undersold Bailey Peacock-Farrell with a back-pass, allowing Roland Sallai to nip in and score with 56 minutes gone.
Up until that point Northern Ireland had looked the more dangerous side with captain Steven Davis hitting the outside of the post and McGinn himself going close, but they could not find a response as Hungary goalkeeper Denes Dibusz made a flurry of saves in a frantic finish.
Even so, this was arguably a better performance than the one that brought victory over Luxembourg on Friday, with Northern Ireland proving a decent match for a side bound for Nations League A – and a group shared by England, Italy and Germany – this summer.
Ian Baraclough had promised to freshen things up after last week’s 3-1 win – a scoreline which flattered Northern Ireland – and made nine changes.
Fleetwood winger Paddy Lane was handed a debut at left wing-back, while two of Friday’s goalscorers – Davis and Gavin Whyte – came into the starting XI along with the likes of Paddy McNair, Dan Ballard, and Ali McCann.
Hungary included Barnsley midfielder Callum Styles, with the Bury-born 22-year-old getting his first start after making his international debut as a substitute in last week’s loss to Serbia.
Davis scored his 13th international goal at the Stade de Luxembourg to move joint-third all time for Northern Ireland, and almost made it 14 with 11 minutes gone when he latched on to a mis-placed pass from Zsolt Nagy and bent a shot onto the outside of the far post.
Hungary again had more of the ball but Peacock-Farrell, back in the Northern Ireland side after staying with Sheffield Wednesday over the weekend, had little to do in the first half.
Sallai sent one shot harmlessly wide from a tight angle then, teed up by the lively Loic Nego, fired straight at Peacock-Farrell.
Instead it was the hosts who again went close before the break. Josh Magennis’ flick-on found Whyte who in turn lifted the ball over to McGinn, but the 34-year-old saw his bouncing shot pushed narrowly around the post by Dibusz.
Dion Charles replaced Magennis at the break and within 45 seconds of the restart was baring down on goal, but was then told to get up after tumbling under the slightest of touches from Adam Lang.
But the mood inside Windsor Park changed when McGinn’s mistake allowed a largely subdued Hungary to take the lead with a goal their attacking play scarcely deserved.
Davis, still feeling his way back from injuries which have hampered his season with Rangers, was replaced on the hour along with Lane as Stuart Dallas and George Saville entered the fray.
McGinn soon made way for Shayne Lavery before Denver Hume replaced Ballard to make his senior bow with eight minutes to go.
A flurry of late substitutions inspired Northern Ireland to victory in Luxembourg and almost produced a leveller here in a pulsating final few minutes – only for Dibusz to make a string of fine saves.
First he got down to deny Saville, waiting for his first international goal after 37 caps, then he stopped Hume getting a debut goal at the far post.
As the game moved into stoppage time the 31-year-old made a double save to keep out efforts from Lavery and Charles and preserve Hungary’s win.