How to use it
- Choose maximize or minimize. Profit, cost, hours, people…
- One column per decision. These are the variables: how many units of each product, how many pallets down each route. Name them and type what each unit adds in the “Objective” row.
- One row per limit. These are the constraints: how much each decision uses, the sign (≤, ≥ or =) and the limit. Machine hours or budget, for example.
- Mark whole-number decisions. The ones that count people or batches as “Integer”; yes-or-no ones (approve a project) as “Binary”.
- Click Solve. Or Ctrl + Enter. The solution appears in the green row, with what each limit uses and its slack.
Not sure where to start? Open the Example menu: it has five solved problems, from a two-part workshop to staff scheduling.
What problems it solves
Any problem written as sums of quantities multiplied by fixed numbers: linear programming, and integer programming when some decisions must be whole numbers or a yes or no. For example:
- Product mix: what to make when a material is scarce.
- Transportation: which warehouse should supply each store to spend the least.
- Staff scheduling: the smallest team that covers the whole week.
- Capital budgeting: which projects to approve with the money available.
All four are in the Example menu, and explained step by step in Spanish. It doesn’t solve nonlinear problems, where two decisions multiply each other or there are powers. Here’s how to tell if your problem is linear.
How to read the result
- Solution (green row): how much of each decision. It’s the best possible plan for the model you wrote.
- Objective value: the profit, cost or whatever you’re optimizing, with that plan.
- Slack 0 (in dark green): that limit is used up. It’s a bottleneck: if you could raise it, the result would improve. To find out what one more unit is worth, raise it a little and solve again.
- Slack above 0: there’s some left over. Raising that limit wouldn’t change anything.
The answer is only as good as the model. If a limit is missing, the plan may be impossible to carry out. Check the table really describes your problem before you decide anything with it.
From here to your Google Sheets
If your data already lives in a spreadsheet, the free template does the same inside Google Sheets: copy the sheet, write the model in the same table and the solution appears in your sheet, using Google’s optimization engine.
Frequently asked questions
Is it free?
Yes. No sign-up, no usage limits and no ads.
Does my data leave my browser?
No. The problem is solved inside your browser by an engine that downloads with the page: nothing is sent to any server. Your last model is kept in your own browser so you don’t lose it. Only if you click Share does the model travel inside the link you choose to send.
How big a problem can it solve?
Up to 40 variables and 40 constraints. Linear models solve instantly. With many integer or binary variables it can take longer: after 8 seconds it gives you the best solution found so far and tells you so.
Is it the same as Excel’s Solver?
It solves the same problems as the “Simplex LP” method in Excel’s Solver, including integer and binary variables. It doesn’t solve nonlinear problems: for those, desktop Excel has the “GRG Nonlinear” method. The Solver guide explains how to tell if your problem is linear.
Why does no variable come out negative?
Because an empty minimum means 0, just like Excel Solver’s “Make Unconstrained Variables Non-Negative” box. If a variable can be negative, type its minimum, for example -100.
Can I share a problem?
Yes. Click Share: it copies a link that opens the tool with your model exactly as it is. Handy for sending an exercise to a class or asking for a second opinion.
What if I want to solve it inside Google Sheets?
Make a copy of the free template: it brings its own Solver menu, uses Google’s engine and writes the solution into your sheet.