Tools / Ollama
Ollama Review
The simplest way to run open language models locally, with an optional cloud for big ones
Last reviewed: October 2026
TL;DR
Ollama is the default way to run open models locally: one install, one command to pull and run a model, and a local API that most AI tools can talk to. It supports NVIDIA, AMD ROCm, Apple Metal, and Vulkan GPUs, and now also offers cloud-hosted models for ones your machine cannot run. The defaults (a 4,096-token context window, one parallel request per model) are worth changing deliberately.
License
MIT
Self-hosted
Yes
Cloud option
Ollama cloud models (Free, Pro $20, Max $100, Team $500, Enterprise)
GitHub stars
182.9K★
Checked October 2026
Category
AI Assistants & Local Models
Pricing
Running models on your own hardware is free and unlimited; the optional cloud has a free tier, Pro at $20/month, Max at $100/month, and Team at $500/month in early access
What is Ollama?
Ollama lets you run large language models on your own CPU or GPU without sending data to third-party APIs. It serves models over a local HTTP API that is compatible with OpenAI and Anthropic-style clients, and the docs list integrations with desktop apps and coding agents, plus Python and JavaScript libraries. Models are packaged with a Modelfile, and the model library covers coding, vision, embedding, and reasoning models. Since the addition of cloud models, the same interface can also call larger hosted models, in the US, Europe, and Singapore, with a stated policy that inputs are not used for training, and you can turn cloud features off with OLLAMA_NO_CLOUD=1 for strictly local operation.
Installation & self-hosting
Installers exist for macOS, Windows, and Linux, and Docker is supported. GPU support is documented in detail: NVIDIA GPUs with compute capability 5.0 or higher and driver 550 or newer (cards with compute capability 5.0 to 6.2 need driver 570 or newer), AMD GPUs through ROCm v7 on Linux and a smaller set of cards on Windows, Apple GPUs through Metal, and Vulkan on Windows and Linux (enabled by default when its backend is installed, with OLLAMA_VULKAN=0 to disable it). Docker GPU acceleration needs nvidia-container-toolkit on Linux or Windows with WSL2, and Docker Desktop on macOS has no GPU passthrough. Models are stored in ~/.ollama/models on macOS, /usr/share/ollama/.ollama/models on Linux, and C:\Users\%username%\.ollama\models on Windows, and OLLAMA_MODELS changes that. The server binds to 127.0.0.1 on port 11434 by default, and you change that with OLLAMA_HOST.
User experience
Most people meet Ollama through other front ends: Open WebUI and many coding agents call its API. In the terminal, ollama run starts a chat, and ollama ps shows whether a model is running on GPU, CPU, or a split between them. Two defaults surprise newcomers: the context length is 4,096 tokens (set OLLAMA_CONTEXT_LENGTH, /set parameter num_ctx, or num_ctx in API options), and models stay loaded for 5 minutes after use (keep_alive, with ollama stop to unload immediately). This section reflects the official docs and FAQ; we did not benchmark Ollama.
Key features
- One-command model download and run, with a library of coding, vision, embedding, and reasoning models
- Local HTTP API with OpenAI and Anthropic-compatible endpoints
- NVIDIA, AMD ROCm, Apple Metal, and Vulkan acceleration
- Concurrency controls: OLLAMA_NUM_PARALLEL, OLLAMA_MAX_LOADED_MODELS, and OLLAMA_MAX_QUEUE
- Optional cloud models with usage-based billing and an off switch
- Flash Attention and K/V cache quantization to reduce memory use
What Ollama does well
- Extremely simple to start, and supported by almost every local-AI tool
- MIT license and a huge community (about 183,000 stars)
- Clear documentation of GPU support and environment variables
- No per-token cost or rate limit for local models
Where Ollama falls short
- Parallelism is conservative by default: one request per model, and a queue of 512 before requests are rejected with a 503
- The default 4,096-token context is small for coding and long documents, and raising it multiplies memory use
- Fewer low-level knobs than llama.cpp, which Ollama builds on
- Cloud pricing is usage based, credits reset monthly and do not roll over, and lower tiers have concurrency limits
- Exposing it beyond localhost has no built-in authentication, so you need a reverse proxy or network controls
Pricing
Local use is free and unlimited. The cloud plans are Free (starter credits, 1 concurrent request), Pro at $20/month or $200/year ($60 of monthly credits, 3 concurrent requests), Max at $100/month ($300 of credits, 10 concurrent requests), Team at $500/month in early access (unlimited users, $1,000 of shared credits), and Enterprise on request. Usage is billed per token at each model's rate, with lower off-peak rates outside 12:00 to 18:00 UTC on weekdays and all day on weekends, and example rates range from $0.07 input and $0.30 output per million tokens for gpt-oss:20b to $3.00 and $15.00 for kimi-k3.
Ollama vs LM Studio
LM Studio is a graphical desktop app for discovering, downloading, and chatting with local models, and it is proprietary. Ollama is lighter, scriptable, open source, and designed to be the backend other tools plug into, so developers tend to prefer it. Msty Studio is another GUI, and Together AI and Fireworks AI are hosted inference services. If you want a point-and-click app, LM Studio or Msty fits; if you want a local server for apps and agents, Ollama is the standard.
See all LM Studio alternativesBest for
- Developers who want a local model API for apps, agents, and coding tools
- Privacy-conscious users who want prompts and data to stay on their machine
- People who want to try many open models quickly
- Teams that want to keep an option to burst to larger cloud models
Not ideal for
- Users without capable hardware who need top-tier model quality
- Anyone who wants a graphical model manager out of the box
- Teams that need managed, authenticated serving at scale
Alternatives
Final verdict
Ollama is the easiest way to run open models and the sensible starting point for almost every developer. Raise the context length for real work, put authentication in front of it if you expose it, and drop down to llama.cpp only when you need finer control.