Chris Evans has topped the list of the BBC’s best-paid stars.
He made between £2.2m and £2.25m in 2016/2017, while Claudia Winkleman is the BBC’s highest-paid female celebrity, earning between £450,000 and £500,000.
About two-thirds of stars earning more than £150,000 are male, compared to one-third female.
Director general Tony Hall said there was “more to do” on gender and diversity.
“On gender and diversity, the BBC is more diverse than the broadcasting industry and the Civil Service,” he said.
“We’ve made progress, but we recognise there is more to do and we are pushing further and faster than any other broadcaster.”
There is also a gap between what white stars and those from a black, Asian and minority ethnic (BAME) background are paid.
George Alagiah, Jason Mohammad and Trevor Nelson are the highest paid stars, each receiving between £250,000 and £300,000.
The highest-paid female star with a BAME background is BBC news presenter Mishal Husain, who received between £200,000 and £250,000.
It is the first time the pay details of stars earning more than £150,000 have been made public.
The revelations are required under the BBC’s new Royal Charter and encompass 96 of its top stars.
The annual report contains pay information in bands and does not reveal exact amounts. Nor does it include stars who receive their pay through BBC Worldwide, the corporation’s commercial arm.
The figures quoted only refer to the amount of licence fee money each person receives and do not include their earnings from other broadcasters or commercial activities. It does not include many stars paid through independent production companies.
The list also does not distinguish between people with multiple jobs within the BBC and those with just one.
The figures also show disparities in pay for people working on the same show, including the judges on Strictly Come Dancing.
Head judge Len Goodman and Bruno Tonioli are in the £200,000-£250,000 band, while Craig Revel Horwood and Darcey Bussell get between £150,000 and £200,000.
Tess Daly, Winkleman’s Strictly Come Dancing co-host, was paid between £350,000 and £400,000.
The BBC is alone among the UK’s major broadcasters in releasing details of its on-air and on-screen talent.
Talent pay is considerably higher in the commercial sector.
Overall, 25 men on the talent list receive more than £250,000, compared to just nine women.
As he left the BBC earlier after his Radio 2 breakfast show, Chris Evans said it was right “on balance” that star salaries were being disclosed.
“We are the ultimate public company I think, and therefore it’s probably right and proper people know what we get paid,” he told reporters.
Analysis by Amol Rajan, media editor
The revelation that the BBC’s highest-paid on-air stars are Chris Evans and Gary Lineker won’t surprise many licence fee payers – but their salaries might. They won’t enjoy the coming headlines; neither will Alan Yentob, a bete noire of Britain’s press, who is on the list.
Right across the media industry today, executives outside the BBC are thinking about who they might approach with a juicy offer, agents are fielding calls from clients saying “But you told me he was paid X!!!”, and journalists in the commercial sector are thinking “That lucky rascal!”.
These 96 names know they have two bosses: Internal managers at the BBC, and the public. Their interests have clashed over this disclosure. Now the former – BBC executives – will have to manage the fallout, while the latter – licence-fee payers – think hard about value for money.
Casualty star Derek Thompson is the BBC’s highest paid actor, receiving between £350,000 and £400,000 over the last financial year.
Amanda Mealing, who also stars in Casualty as well as Holby City, is the corporation’s highest paid actress, receiving between £250,000 and £300,000.
Peter Capaldi, the outgoing star of Doctor Who, was paid between £200,000 and £250,000.
The overall spend on talent is put at £193.5m – down on the £200m spent in 2015/2016.
The figures also show a decrease – from 109 to 96 – in the amount of stars paid more than £150,000.
The total spend on stars with salaries of more than £150,000 is also down £5 million on the £31.9 million paid in the previous financial year.
Analysis by David Sillito, media correspondent
The BBC pay details may not give the full story. Graham Norton’s £850,000 pay does not include what he receives from the production company, So TV, that makes his Friday night chat show.
It’s also worth noting the name of Matt LeBlanc does not appear on the list – suggesting he is paid by the BBC’s commercial operation, BBC Worldwide, and not the licence fee.
Stephen Nolan, who is paid more than £400,000, presents five days a week on BBC Ulster. He also appears on BBC 5 Live and does some TV work.
On BBC Breakfast, neither Louise Minchin nor Charlie Stayt appear on the list but Dan Walker is there with earnings of more than £200,000.
However, he also presents Football Focus and was part of the Rio Olympics coverage.
Speaking on the Today programme earlier, Lord Grade – a former BBC One controller – called the government’s insistence that talent pay be disclosed “distasteful and disturbing”.
“The net result of this is inflation,” he said. “Talent salaries and wages will round upwards, they won’t go down.”
The annual report shows the BBC continues to reach 95 percent of UK adults every week.
It also shows the iPlayer had its most successful year to date, with an average of 246 million requests each month.