In 2014, a report by the public protector said Mr Zuma had "benefited unduly" from the upgrades.
Mr Zuma said the auditor-general and finance minister should determine how much he should repay to end the dispute.
The announcement comes a week before a constitutional hearing on the matter.
Africa Live: BBC news updates
How President Zuma's Nkandla home has grown
The refurbishment of the residence in the village of Nkandla, in Mr Zuma's home province of KwaZulu-Natal, has turned into a major political controversy in South Africa.
Some of of the money was spent on building an amphitheatre, swimming pool, and cattle enclosure.
The opposition Democratic Alliance (DA) and Julius Malema's Economic Freedom Fighters (EFF), who have called for a corruption investigation, say they are pressing ahead with their court case regardless of the president's latest offer.
Following Mr Zuma's announcement #PayBackThemoney is trending in South Africa - this was the phrase EFF MPs chanted at the president in parliament last year.
Many commentators seem sceptical.
Analysis: Milton Nkosi, BBC News
President Jacob Zuma's delayed willingness to pay back the money spent on the upgrades to his Nkandla residence could be a calculated move to avoid embarrassment at the Constitutional Court hearing expected next week.
But it could also be linked to the forthcoming local government election.
The Nkandla scandal has been a sore point for the governing African National Congress (ANC) which President Zuma leads, especially as the party faithful go out to campaign for votes.
Political analyst Professor Somadoda Fikeni told me that it could also be related to the president being "politically vulnerable as he enters his 'lame-duck' period and following his mis-appointment of finance ministers" at the end of last year.
Another consideration could well be an attempt to avert another episode of the chaotic scenes we saw during the opening of parliament last year when Julius Malema's Economic Freedom Fighters (EFF) heckled and disrupted the president's state of the nation address.
Security personnel had to be called into the chamber to remove the MPs who would not stop shouting "pay back the money'" while President Zuma desperately tried to deliver his speech.
Punches at South Africa parliament
Why did Zuma sack two finance ministers in a week?
All figures in 2013 financial terms
Source: Public protector report
South Africa's President Jacob Zuma has agreed to repay some of the $23m (£15m) the government controversially spent on upgrading his private rural home.