Timberlake, 37, told fans in a message that he would play another gig on his birthday, January 31, to make up for not appearing at the New York arena.
He added he was “sorry to do this” but that he had been advised by his doctor to rest his voice.
Posting to Instagram, he wrote: “Hey guys, I’m sorry to announce I have to postpone the show at MSG tonight on doctor’s orders. My vocal cords are severely bruised.
“I’m gonna make this up to you and the new show will be on my birthday, January 31.
“More info to come. Again I’m so sorry to do this, but excited to see you soon. Love, J.”
Timberlake’s next scheduled performance is at the KeyBank Centre in Buffalo, New York, on October 28.
Justin Timberlake cancels Madison Square Garden show over ‘bruised’ vocal cords