The six-time Sprint Cup champion won the 35-39 age group at the Over The Mountain Triathlon in Kings Mountain on Saturday hours before heading to Charlotte Motor Speedway to compete in the NASCAR All-Star Race, where he wound up sixth.
Johnson finished 11th overall out of 119 male participants with a time of 2 hours, 30 minutes, 7 seconds.
"It was awesome," Johnson said. "... I'm so stoked, so stoked."
Johnson expected to get a little rest when he returned home, but wife Chandra had other ideas.
"I walked into (my wife) saying, 'It's been a frustrating morning, here you go,'" Johnson said. "So I got the two kids and got in the pool. I took a shower in my swimming pool."
Johnson's bib number was -- what else? -- No. 48.
Johnson, who has won four All-Star races during his prestigious career, including the last two, said at the race track he wasn't too tired to race.
"I feel good so far," Johnson said. "I need sleep, but through this whole process, I've learned so much about nutrition and hydration, and I feel really good. I'll just need to get my sleep on Sunday."
Information from The Associated Press was used in this report.