The Briton finished with 4750 points, 50 clear of Ivona Dadic of Austria, who took silver ahead of Cuba’s Yorgelis Rodriguez in bronze (4637pts).
“I can’t believe it. I’ve dreamt of this for so long. To come here and do it at a home champs, it was something I dreamed of doing last summer, so I’m so happy I got to rectify that,” she told the BBC.
“It’s been a wobbly day but I’m happy I grasped the opportunity. All my family here and that’s something that never normally happens.
I went through a hard year last year, towards the end, and I just wanted my family to see me actually achieve something. They were here for every event – I still can’t believe it. Hopefully this can be the start of something.
Johnson-Thompson, who finished sixth in the heptathlon at Rio 2016 and fifth at last year’s World Championships in London, led the pentathlon going into the 800m – the event’s final discipline.
A time of 2:16.63 saw the 25-year-old finish the 800m in first, while nearest rival Dadic came third, 1.19 seconds behind Johnson-Thompson.
Earlier in the day, Johnson-Thompson was sixth quickest in the 60m hurdles, came out on top in the high-jump with 1.91m, and secured a personal best in the shot put, throwing 12.68m.
Johnson-Thompson recorded 6.50m in the long jump to ultimately place first going into the 800m, with a narrow 37-point advantage.
Gold in Birmingham will be a welcome relief for the Liverpudlian, having last taken to the podium in 2015 when winning the pentathlon at the European Indoor Championships.