Planning next year's software budget

Planning next year's software budget. Maxiom Technology software insights

The spreadsheet showed up in October. Cloud was one cell that said AWS. Debt was a wish. The AI line had a vendor name and no way to tell if it worked. Upkeep was the row someone deleted so the total would fit.

That is not a budget. That is a hope with a dollar sign.

I am not writing a finance model. I am writing what I would tell a founder the week before they lock next year. Read the cloud bill. Pay down a few pieces of debt on purpose. Run one AI pilot with a sentence that says it worked. Leave the upkeep in. Put a name on every line. If a line has no name, it is not in the plan.

Cloud bills you can read

The bill is not one number. It is production, the staging environment nobody turned off, the logs that never expire, the cluster from a demo in March, and the seat you still pay for a person who left.

Write it as a few lines a person can say out loud. Production. The extra environments. The tools. The thing you will turn off, and the month you will turn it off. If the only answer is "it went up," you do not have a budget. You have a surprise that arrives every month.

A good line has a name and a reason. Jordan owns the production cloud. The line is higher because of the new region. It is not higher still because the old cluster comes off in March. A bad line is AWS, one cell, and a shrug.

Paying down debt

Debt is the week that became a quarter. Next year you either pay some of it, or you plan to be slow again.

Pick a few items. Each one says what it cost you in days, what the fix is, and the date the extra time stops. Do not write "refactor the platform." Write the one path that takes a quarter, and the change that makes the next one take a week.

The rest of the debt waits, and you say so. A budget that pretends you will clean the whole codebase is a budget that will miss the roadmap. The longer piece on what that time actually costs is the real cost of technical debt.

An AI pilot with a success check

Someone will ask for an AI line. Most of those asks are a demo. Fund one or two. Leave the rest off the sheet.

The pilot needs a sentence you can check. "Support drafts are right often enough that Maya keeps the agent on" is a check. "Explore AI" is not. Write the check before you spend. If the check fails, the line ends. You do not roll it into the year after because the vendor is already in the building.

The owner is the person who already owns that work. Support owns the support pilot. Finance owns the finance pilot. "The AI team" is not a name. If you cannot say what the pilot may read, what it may change, and how you turn it off, it is not ready for a line in the budget. That bar is owners and guardrails for agents that do real work.

Upkeep that never gets cut

The row people cut to make the total look fine is the one that keeps the product up. Patching. The person on call. The upgrade a vendor will force in the fall. The backup you have not tried.

If you cut that row, you did not save the money. You moved it to a night in July when nobody is named. Leave the lane in. It is not optional because a feature looks better in the deck.

Upkeep has a name too. The person who can deploy, roll back, and say where the secrets live. If that name is still a feeling, you are budgeting a demo. The night that shows up is who owns production after launch.

Line What good looks like Not good enough
Cloud A few lines a person can explain, plus what you will turn off. One cell that says AWS.
Debt A few items, the days they cost, and the date the extra time stops. "Refactor the platform," with no date.
AI pilot One or two uses, a sentence that says it worked, and a stop if it does not. A vendor name and a hope.
Upkeep Patching, on-call, and the upgrade you cannot skip. Still in the sheet. The row someone deleted so the total would fit.
Owner A person on every line, with a backup. "The team."

A name on every line

The owner picks what stays in the sheet and what waits, and they say the wait out loud. A backup sits next to them. If both are out, the plan pauses. It does not become whoever is free on Friday.

Write the name before you call the budget done. Cloud. Debt. The pilot. Upkeep. If a row is blank, that row is not funded. It is a wish.

This is the same seat as a CTO advisory conversation. Someone who will sit in the room and point at the blank row before you lock the year. Not a slide about strategy. A name.

Write the sheet, or bring someone who will

A small team can do this themselves. The founder who still ships, or the engineering lead, writes the lines and the names. That is enough when the sheet is short and the names are real.

Bring someone in when the sheet is still a feeling. Cloud is one cell. Debt is a word. The AI line has no check. Upkeep got cut so the number would look right. That conversation is CTO advisory. Thirty minutes is enough to tell whether the lines are real.

Do not start a rewrite to avoid the sheet. A new platform does not explain last year's cloud bill, and it does not name who is on call.

Same idea, other angles

Next year's money is the same week. The seat changes.

FAQ: planning next year's software budget

What belongs in a software budget?

Five lines you can say out loud. The cloud bill, broken into pieces a person can explain. The debt you will actually pay down. One or two AI pilots, each with a success check. The upkeep you will not cut. A name on every line. A single cell that says AWS is not a budget.

How should we read the cloud bill?

Split it. Production, the extra environments, the tools, and the thing you will turn off. Put a month on the thing you will turn off. If nobody can explain why the number moved, you are not planning. You are waiting for the invoice.

How do we pay down debt without freezing the roadmap?

Pick a few items. Write the days each one costs, the fix, and the date the extra time stops. Keep shipping the rest. A plan that says you will clean the whole codebase will miss the features. The rest of the debt waits, and you say so. More on the calendar cost is in the real cost of technical debt.

What makes an AI pilot worth a line?

A sentence you can check, written before you spend. One owner, who already owns that work. A stop if the sentence is false. "Explore AI" is not a pilot. A vendor name is not a check. If you cannot say what it may read, what it may change, and how you turn it off, it is not ready.

What upkeep should we refuse to cut?

Patching. The person on call. The upgrade a vendor will force. A backup you have tried. Cutting that row does not save the money. It moves the cost to a night when nobody is named. That night is who owns production after launch.

Who should own each line?

A person, plus a backup. Cloud has a person who can explain the bill. Debt has a person who picks what gets paid. The pilot has the person who already owns that work. Upkeep has the person who can deploy and roll back. "The team" is not a name.

Is this the same job as hiring a partner?

No. This is the sheet for the year you already have. How to choose a software partner is the week before you sign with someone new. You can have a clean budget and still hire badly. You can hire well and still have a blank row. Do not skip either.

What if the product is a mobile app, a hiring plan, or a clinical system?

Same week, different seat. A phone or tablet product is planning next year's app budget. People you will hire are how to budget for developers next year. A clinical system is planning a healthcare software budget.

When should we bring someone in?

When the sheet is still a feeling. Cloud is one cell. Debt is a word. The AI line has no check. Upkeep got cut so the number would look right. That is CTO advisory. If you can already point at the lines and the names, you can lock the year yourselves.

If you want that conversation, see CTO advisory or talk to an engineer. Thirty minutes is enough to tell whether the sheet is real.

I write from the seat of a working engineering company, not a tool vendor. More at antoniochagoury.com.

Related posts

Next step

Finished reading? Tell us what you are trying to ship.

Share your stack, timeline, and constraints. A senior Maxiom engineer will reply with an honest fit assessment, and a clear next step if we are the right partner.

  • Response within 1 business day
  • Senior engineers: no junior bench
  • Written scope before kickoff

Or send project details

Scoping

Request a scoping call

Response within 1 business day