The Turnbull government's Gonski 2.0 overhaul of school funding all but passed the Senate late on Thursday following a marathon debate.
Labor and the Greens voted against the package, but the government secured the 10 crucial crossbench votes needed to get its funding shake-up over the line.
Debate on the amended bill wrapped up late just after 10pm, with only procedural votes still ahead.
The Turnbull government's school funding package will go to the House of Representatives to be rubber stamped, before being sent back to the Senate for a final vote
The new deal, negotiated with crossbenchers, will mean schools receive an extra $5 billion over the next 10 years, lifting the total funding boost to $23.5 billion.
Under-funded schools will reach funding targets in six years instead of 10 and $50 million will be spent on a transition fund for Catholic and independent schools over 12 months.
The government has also agreed to a new watchdog conducting a review of the schooling resource standard, which is the basis of the new needs-based funding model, and a guarantee the states won't withdraw their funding as more federal money flows through.
These concessions helped to secure support from the Nick Xenophon Team.
They are similar to demands from the Greens, with education spokeswoman Sarah Hanson-Young claiming credit for securing a better deal for public schools.
Despite that, the minor party's nine senators opposed the bill because of the transition package for Catholic and private schools.
The National Catholic Education Commission urged the Senate to reject the package, saying a meeting with Education Minister Simon Birmingham on Wednesday night failed to ease its concerns.