The visitors' winning goal came on 12 minutes when Noe Baba fired home from long range on his debut.
Wrexham, who fielded seven of their 13 summer signings, came closest to an equaliser when Paul Rutherford headed over in the second half and they had a late penalty claim turned down.
Tyrone Marsh's effort for the visitors was also ruled out for offside in front of a crowd of more than 6,000.
Wrexham manager Dean Keates told BBC Radio Wales Sport:
"It wasn't the result we wanted... but I thought we were a lot better second half, played on the front foot and put them under a lot more pressure.
"We're at home and you want to create chances; the couple that we had we didn't really take and the kid [Baba] has hit a top shot from 30 yards out and it's gone in.
"It's small margins, but ultimately there's no point me standing here moaning [about the disallowed penalty]. I've watched it back and it's obvious what the decision is, the referee [Neil Hair] was in the right position but he's not given it to us."
Match ends, Wrexham 0, Macclesfield Town 1.
Second Half ends, Wrexham 0, Macclesfield Town 1.
Substitution, Wrexham. Akil Wright replaces Mark Carrington.
Substitution, Macclesfield Town. Scott Wilson replaces Tyrone Marsh.
Substitution, Macclesfield Town. Courtney Richards replaces Elliott Durrell.
Substitution, Wrexham. Jack Mackreth replaces Paul Rutherford.
Sam Wedgbury (Wrexham) is shown the yellow card.
Second Half begins Wrexham 0, Macclesfield Town 1.
First Half ends, Wrexham 0, Macclesfield Town 1.
Substitution, Wrexham. Ntumba Massanka replaces Chris Holroyd.
Goal!  Wrexham 0, Macclesfield Town 1. Noe Baba (Macclesfield Town).
First Half begins.
Lineups are announced and players are warming up.
A stunning strike helped Macclesfield Town beat Wrexham at the Racecourse.