Jose Manuel Barroso announced the deal Thursday. He said it includes more flexibility than earlier versions.
It still needs legislative approval. European Parliament President Martin Schulz called the deal "acceptable."
Last week, leading parties in the European Parliament said they wouldn't back an earlier budget deal.
The 27 EU nations have been trying since last fall to cobble together a budget for the years 2014-2020 at a time when many of them are mired in recession.
The budget sets what the EU can spend on everything from infrastructure, farming to development aid and employment measures.