The Socialists control just 84 seats in the 350-seat parliament, the smallest proportion for a government since the country returned to democracy following dictator Francisco Franco's death in 1975.
To pass the budget they will need the support of Catalan separatists who have so far steadfastly refused.
“The cabinet will approve the budget proposal in January and we will then present it to parliament” later the same month. “We will work until then to get support in parliament” for it to pass, Prime Minister Pedro Sanchez told private television channel Telecinco.
Asked if he would call snap polls if the budget is rejected by parliament, the prime minister said only he would “fight” for the budget to be approved.
Last month he warned he would call an early election unless parliament approves the spending plan, which includes a big raise in the minimum wage.
Sanchez took over in June from the conservative Mariano Rajoy after a surprise no-confidence vote which was supported by Catalan separatist parties.
But the Catalan separatists are now angry that public prosecutors in November sought jail terms of up to 25 years on charges of rebellion or misuse of public funds for Catalan leaders in jail over last year's failed attempt by Catalonia to break away from Spain and are refusing to cooperate with Sanchez's government.
Sanchez's Socialists suffered heavy losses in a regional election in Andalusia on Sunday which also saw a far-right party, Vox, win seats in a regional parliament for the first time since Spain returned to democracy.
Asked about the polls, Sanchez accused the conservative Popular Party and centre-right Ciudadanos of considering “without shame” joining forces with Vox to govern in Andalusia, which has been ruled by the Socialists for 36 years.