Donald Trump paid just $750 (£590) in federal income taxes in 2016 – the year he was elected, according to The New York Times.
An investigation by the newspaper also claimed that he didn’t pay any income tax at all in 10 of the 15 years before he became president.
The claims come just weeks before a divisive election, with early voting already under way.
It is also claimed that his tax bill also came to just $750 in 2017 during his first year in office.
When asked about the report in his daily briefing, Mr Trump said: “It’s totally fake news, made up, fake. Actually I paid tax.”
Mr Trump insisted his tax details would be released when the Internal Revenue Service (IRS) finishes its audit.
“They’ve been under audit for some time,” Mr Trump added. “The IRS treat me very badly.”
A lawyer for the Trump Organisation told the newspaper that “most, if not all, of the facts appear to be inaccurate”.
In a statement he said the president “has paid tens of millions of dollars in personal taxes to the federal government, including paying millions in personal taxes since announcing his candidacy in 2015”.
The NY Times report claims Mr Trump was able to minimise his tax bill by reporting heavy losses across his business empire.
It said he claimed $47.4m (£37.1m) in losses in 2018, despite saying he had income of at least $434.9m (£340.7m) in a financial disclosure that year.
The US president’s consistent refusal to release his taxes has been a departure from standard practice for presidential candidates.
He is currently in a legal battle with New York City prosecutors and congressional Democrats who are seeking to obtain his returns.
During a presidential debate against Hillary Clinton in 2016, Mrs Clinton said that perhaps Mr Trump was not releasing his tax returns because he had paid nothing in federal taxes.
Mr Trump interrupted her to say: “That makes me smart.”
Will this make much of a difference to Trump’s base? Probably not
Analysis by James Matthews
Tax dodging isn’t a good look. Certainly not in an election campaign.
Asking a public to lend you its vote isn’t made easier by asking its taxpayers to pay taxes you don’t. Certainly not when you’re the president of the United States.
And yet that’s the picture painted by the New York Times’ revelations. The tax dodger asking (another) favour of the taxpayer, for four more years in the White House.
Much of America reeled in dismay. As Maria Teresa Kumar, of “Voto Latino”, tweeted: “2016 taxes: Trump paid $750. Undocumented workers paid $27,000,000,000.00.”
But will it make much difference with Trump’s base vote? In truth, probably not.
Donald Trump has never scored well on honesty and integrity anyway and enough people view tax avoidance as acceptable and victimless to soften the impact on the core vote.
It could harm him in the eyes of the undecided and less committed, however.
There is the strong whiff of dishonesty, yes, but there’s also the exposure of serial financial loss by a man feted as a corporate genius.
For him, that’s the part in all this that will surely be most excruciating. For the voter, it might be grounds to re-evaluate his reputation.
The revelations play into Joe Biden’s framing of the election as “Scranton vs Park Avenue.”
The Scranton-born contender needs to consolidate and win new support in Democratic heartland, in America’s ‘rust belt’, in Main Street USA and this might well be a win with the working class vote.
Democratic debate preparations could well include questions over taxes, financial loss and how a president in need of hard cash can guarantee national security in his effort to find it.