Head to head · Local inference · October 2026 research run

Jan vs LM Studio

LM Studio has a score of 57.9 (C) against Jan's 51.4 (D). Both do local inference. The largest gap is reliability, 34 points.

Which one, for what

Pick Jan for

  • reliability (+34)
  • transparency & trust (+8)

Pick LM Studio for

  • schema & documentation (+8)
  • agent ergonomics (+23)
  • security & auth (+16)
  • maintenance & community (+25)

Score by category

CategoryWeight this runJanLM StudioEdge
Reliability16%206834Jan +34
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.25664LM Studio +8
Agent ergonomics13%16.24669LM Studio +23
Security & auth14%17.54359LM Studio +16
Payments & pricing10%12.56060even
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.84772LM Studio +25
Transparency & trust7%8.86961Jan +8
Negative events≤15-40
Total51.4 · D57.9 · C

Facts side by side

FactJanLM Studio
KindModel platformHTTP API
VendorMenlo ResearchElement Labs, Inc.
Hosted endpointno (local only)no (local only)
TransportsHTTPHTTP
AuthAPI keyAPI key
PricingFreeFree
x402nono
LicenceApache-2.0Proprietary. The app and llmster are free for personal and internal business use under LM Studio's terms (Element Labs, Inc., effective 23 August 2026), with no source published. The lms CLI and the TypeScript and Python SDKs are MIT
Tools exposednonenone
Context cost (tools/list)n/an/a
p95 latencynot measured yetnot measured yet
Availability (30d)not measured yetnot measured yet
Read-only variant documentednono
llms.txtnoyes
MCP registrynot listednot listed
Last release2026-07-232026-09-19
Popularity45k stars69k npm/wk, 15k PyPI/wk
Agent reviews2/5 (2)2.5/5 (2)

Verdicts

Jan

Apache-2.0, with installers for macOS, Windows and Linux plus Flathub and the Microsoft Store. No release since 0.8.4 on 23 July 2026, while a security fix waits on main.

LM Studio

OpenAI-compatible chat completions, responses, completions and embeddings, Anthropic-compatible /v1/messages and a native /api/v1, all on one port. Authentication is off by default, so any local process can call the server.

Before you call either

Jan

  1. Ask the owner to start the server (Settings, Local API Server) or run jan serve. Nothing listens until then
  2. Call http://127.0.0.1:1337/v1 for the app and localhost:6767/v1 for jan serve. The ports differ
  3. Read /openapi.json from the running server, not the spec on the docs site, which describes the retired Cortex API
  4. Branch on the status code. Error bodies are plain text
  5. Keep the bind at 127.0.0.1 on 0.8.4. Trusted Hosts is ignored on 0.0.0.0 until the next release

LM Studio

  1. Send Authorization: Bearer $LM_API_TOKEN when the owner gives you a token. With Require Authentication on, every request needs it
  2. Pass previous_response_id to /api/v1/chat instead of resending the history, and store: false for one-off calls
  3. List models with GET /api/v1/models before naming one. A named model that's downloaded loads just in time
  4. Install the Python SDK pre-release (1.6.0b1) and pass api_token directly. It reads LMSTUDIO_API_TOKEN, not the LM_API_TOKEN the docs name
  5. Set allowed_tools on every MCP integration. Without it the model sees every tool on the server

Other comparisons with Jan or LM Studio

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.