Paste a model and watch the solvers race for it.
Send an LP, MPS, CNF, MaxSAT, SMT-LIB, MiniZinc or TSPLIB file. Every solver we have for that format starts on it at once, on an 8 vCPU machine, with 60 seconds to finish. You get the best checked answer back, along with each solver's time and which one won. Your file stays private unless you say otherwise, and there is no account to create.
Today every racer is an open-source solver on our hardware. Later, other people's solvers will be able to enter the race.
| # | Solver | Status | Wall time | Share of the 60 s cap |
|---|---|---|---|---|
| 1 | SCIP won | optimal | 7.204 s | |
| 2 | HiGHS | stopped | 7.210 s |
- 8 vCPU
- 16 GiB
- 60 s cap
- no account
Try it
Pick a sample and watch the race, or paste your own model.
From a terminal, one call posts a problem and returns a link to poll:
curl -s https://npcompleter.com/v1/problems -H 'content-type: application/json' -d '{"format":"cnf","body":"p cnf 3 2\n1 -3 0\n2 3 -1 0\n"}' What runs it
| Format | Racers |
|---|---|
| LP | HiGHS, SCIP |
| MPS | HiGHS, SCIP |
| CNF | Kissat, CaDiCaL |
| WCNF | RC2 |
| SMT-LIB | Z3, cvc5 |
| MiniZinc | CP-SAT |
| FlatZinc | CP-SAT |
| CP-SAT proto | CP-SAT |
| TSPLIB | PyVRP, OR-Tools routing |
| Factor | SymPy |
Each race runs on one machine with 8 vCPU and 16 GiB of memory. Every racer gets the whole problem and a 60-second cap. When one racer proves optimality or answers a yes-or-no problem, the others are stopped. We check the winning solution ourselves before showing it: every constraint, bound and clause, with the objective recomputed. Optimality proofs and UNSAT answers come from the solver, and the card says so.
The open-source MIP solvers we run are 8 to 14x behind the best commercial MIP solver on hard instances. On Hans Mittelmann's MILP benchmark of 28 October 2026 (240 instances, 2 hours each), COPT solved 225. Parallel HiGHS solved 179 and took 7.7 times as long as COPT. SCIP solved 136 and took 14 times as long. If your model needs Gurobi or COPT, this service will not replace them.
For SAT, MaxSAT, SMT and constraint programming, the open solvers are the best available. CP-SAT won gold in every awarded category of the 2025 MiniZinc Challenge.
Limits
- 60 seconds of racing per problem. A problem that does not finish is marked unsolved, and you can set a bounty on it.
- 1 MB per file.
- 20 posts per day from one IP address.
- LP and MPS models must be linear. A quadratic objective is rejected with an error.
- Factoring inputs are capped at 330 bits. Factoring is a demo, and the cap keeps it away from real keys.
- No callbacks, warm starts or solver parameters. You send a file and get an answer.
Prices
Small problems are free. If the race finishes in under 3 seconds and the model has at most 2,000 variables and constraints (or 2,000 clauses, or 200 cities), the solution is shown at once. Above that, the card shows the quality of the result first: the objective and bound, or that an answer was found. The solution then costs somewhere between fifty cents and a few dollars, depending on the size of the model and how long the race took. Next to the price we show what the compute actually cost us, usually a fraction of a cent, so the markup is in plain view.
Who it is not for
- Code that calls a solver thousands of times in a loop. The network round trip will dominate. Install HiGHS or OR-Tools locally.
- Column generation, branch-and-price, lazy constraints, or anything else that needs callbacks into your code.
- Hard MIPs when you already have a Gurobi, CPLEX or COPT license. Use your license.
- Data you may not send to a third party. Private problems are deleted 30 days after you last open them, but they do pass through our servers.
Why not NEOS, or pip install highspy?
NEOS is free, run by the University of Wisconsin-Madison, and its open solvers, HiGHS and SCIP included, may be used commercially. For a plain MIP it is a good choice, and we will not pretend otherwise. Where it falls short for us: NEOS jobs are not confidential and NEOS has no deletion policy, while problems here are private by default and deleted after 30 days. NEOS has nothing for SAT, MaxSAT, SMT, MiniZinc or CP-SAT, which is most of what we run. And a NEOS job runs one solver on 4 threads, where a race here runs every applicable solver on 8 vCPU and tells you which one won.
pip install highspy is the right answer when HiGHS on your machine solves your model. This site is for the moment it does not: the solve returns UNKNOWN, times out, or will not close the gap, and you want to know whether a different solver or a bigger machine changes anything. That takes one HTTP call here and nothing to install. A coding agent can install a solver for you, but it will still be one solver on your laptop.
A solver marketplace, with the house as the only entrant for now
Every problem posted here is a small competition between solvers. Today all the entrants are open-source solvers that we run. Next we want to open the race to outside solvers: yours would run on the problems people choose to share, and the board would show when it wins. The post form already has a "public" checkbox for this. It does nothing yet. Later it will let other solvers compete your price down.
If you write or maintain a solver and want to enter when the race opens, leave your address.
Thanks. We will write to you when the race opens to outside solvers.
Or write to hello@npcompleter.com with the subject "Solver signup".