- Windows & macOS: the desktop app downloads updates itself — click the Ollama icon in the system tray or menu bar and choose Restart to update.
- Linux: re-run the install script:
curl -fsSL https://ollama.com/install.sh | sh. It upgrades in place and leaves your models alone. - Models update separately:
ollama pull <modelo>fetches the newer build of a model, downloading only the layers that changed. - Check your version with
ollama -v; on Linux you can roll back by passingOLLAMA_VERSION=<x.y.z>to the install script.
To update Ollama on Windows or macOS, click the Ollama icon in the system tray or menu bar and choose Restart to update — the desktop app downloads new versions automatically in the background. On Linux, re-run the official install script: curl -fsSL https://ollama.com/install.sh | sh. Crucially, this updates only the Ollama runtime itself. The models you have downloaded are updated separately, with ollama pull.
This guide covers the whole picture: checking what you’re running, updating on each platform, the often-missed difference between updating Ollama and updating a model, what re-pulling does to your disk, and how to roll back when a new release breaks something. If you’re evaluating the tool itself rather than maintaining it, start with our guia completo do Ollama.
Check Which Version You’re Running
In any terminal — PowerShell, Terminal.app, or a Linux shell:
ollama --version
# ollama version is 0.5.7 (your number will differ)ollama -v is the short form. If the Ollama server is running (it listens on port 11434 by default), you can also ask it over HTTP, which is handy for remote machines and containers:
curl http://localhost:11434/api/version
# {"version":"0.5.7"}Compare that against the newest release on the project’s GitHub releases page (github.com/ollama/ollama/releases), which is also where the changelog lives. One quirk worth knowing: if the CLI and the running server are different versions — common right after an update, before anything restarts — ollama --version prints a warning about the mismatch. Restarting the app or service clears it.
Updating Ollama Itself
The right method depends on how you installed it:
| Platform / install method | How to update |
|---|---|
| Windows (installer) | Automatic — tray icon → Restart to update; or run the latest OllamaSetup.exe |
| macOS (desktop app) | Automatic — menu bar icon → Restart to update; or download the new build and replace the app |
| macOS (Homebrew CLI) | brew upgrade ollama |
| Linux (install script) | Re-run curl -fsSL https://ollama.com/install.sh | sh |
| Linux (manual tarball) | Download the new tarball from GitHub releases and extract over the old install |
| Docker (any OS) | docker pull ollama/ollama, then recreate the container |
Windows
The Windows app checks for updates on its own. When one is ready, click the Ollama icon in the system tray and choose Restart to update. That’s the entire process.
To update manually — or if the tray icon isn’t offering anything — download the latest OllamaSetup.exe from ollama.com/download and run it. It installs over the existing copy with no uninstall step, into your user profile at %LOCALAPPDATA%ProgramsOllama, so administrator rights aren’t required. Your models live separately under C:Users<you>.ollama and are untouched.
macOS
Same pattern: the app downloads updates in the background and the menu bar icon offers Restart to update when one is staged. The manual route is to grab the latest macOS build from ollama.com/download and replace the app in /Applications.
If you installed the CLI through Homebrew instead of the desktop app, update it the same way you installed it: brew upgrade ollama. Be aware that the Homebrew build can lag the official release by a few days, and running the brew-installed server alongside the desktop app is a classic source of version-mismatch warnings — pick one and stick with it.
Linux
The same one-liner used for a fresh install (walked through in our Guia de instalação do Ollama) also performs updates:
curl -fsSL https://ollama.com/install.sh | shThe script detects your GPU stack, replaces the binary, and doesn’t touch the models directory. If Ollama runs as a systemd service — the default when the script set it up — restart it so the server matches the new CLI:
sudo systemctl restart ollama
ollama -vIf you’d rather not pipe a script into sh, download the Linux tarball (e.g. ollama-linux-amd64.tgz) from the GitHub releases page and extract it over the old install. The exact manual steps have changed between releases, so follow the current Linux instructions in Ollama’s own docs rather than an old blog post.
Docker
docker pull ollama/ollama
docker stop ollama && docker rm ollama
docker run -d --name ollama -v ollama:/root/.ollama -p 11434:11434 ollama/ollamaAs long as your models sit on a named volume or bind mount at /root/.ollama (as above), they survive the container being recreated. Add your usual GPU flags to the executar command. To pin a version instead of tracking latest, use a version tag such as ollama/ollama:0.5.7.
Updating Ollama vs. Updating a Model — Not the Same Thing
This is the distinction people miss. Ollama the program is the server, CLI, and inference runtime. Modelos are data files pulled from the ollama.com registry and stored locally. Updating one never updates the other.
Two practical consequences. First, updating the Ollama binary never changes your model weights — a model that behaved a certain way yesterday behaves the same after an app update (inference-engine fixes can subtly affect output, but the weights are identical). Second, newly released models often require a newer runtime: if you see an error along the lines of “this model requires a newer version of Ollama,” the fix is to update the app, not the model.
Meanwhile, model tags get republished upstream. A tag like llama3.3:70b can be updated by its publisher — a corrected chat template, refreshed weights, a different default quantization. Your local copy is frozen at whatever you downloaded until you explicitly re-pull it.
Re-Pull a Model to Get the Newer Build
Updating a model is one command:
ollama pull llama3.3Models are stored as content-addressed layers (blobs named by SHA-256 digest), so a re-pull compares manifests and downloads only the layers that changed. If nothing changed, the command verifies and exits quickly — re-pulling an up-to-date model is cheap and safe. To see when a tag was last republished, check its page under ollama.com/library; locally, ollama list shows a MODIFIED column telling you when you last pulled or created each model.
There is no built-in “update all models” command. On macOS or Linux, a shell loop does it:
ollama list | tail -n +2 | awk '{print $1}' | while read m; do ollama pull "$m"; doneOne caution: a republished tag occasionally points to a different default quantization or parameter count than the one you originally pulled, which changes memory requirements. If a model suddenly won’t fit after an update, run its new size through the Calculadora de VRAM before blaming your GPU. And if you’re re-evaluating what to run anyway, our roundup of the melhores modelos locais para Ollama is the place to start.
Where Models Are Stored and How Updates Affect Disk
| Plataforma | Default model location |
|---|---|
| Windows | C:\Users\<você>\.ollama\models |
| macOS | ~/.ollama/models |
| Linux (script install, systemd service) | /usr/share/ollama/.ollama/models |
| Linux (run manually as your user) | ~/.ollama/models |
| Docker | /root/.ollama/models inside the container |
You can relocate this with the OLLAMA_MODELS environment variable (set for the server process, not just your shell).
Inside that directory, manifests describes each model tag and blobs holds the actual layers. Because layers are content-addressed, two tags that share a base download the shared layers once. When a re-pull brings new layers, the superseded ones become unreferenced, and Ollama prunes unreferenced blobs when the server starts — so disk usage may briefly rise after an update and drop back after a restart. (Setting OLLAMA_NOPRUNE disables this cleanup.) To reclaim space deliberately, remove models you no longer use with ollama rm <modelo>.
Rolling Back to a Previous Version
Linux: the install script accepts a version pin, which is the cleanest rollback path. Pick the release you want from the GitHub releases page, then:
curl -fsSL https://ollama.com/install.sh | OLLAMA_VERSION=0.5.7 shWindows and macOS: download the installer or app bundle for the older release from the GitHub releases page and install it over the current version. Caveat: the desktop apps update themselves, and as of this writing they don’t expose a supported setting to pin a version — expect the “Restart to update” prompt to return. If staying on an exact version matters (say, for a production box), the Linux service or a version-tagged Docker image is the dependable way to do it.
Modelos are harder to roll back: the registry doesn’t give you an easy way to pull yesterday’s build of a tag, and a re-pull replaces your local manifest. So before re-pulling a model you depend on, keep the current build under a new name:
ollama cp llama3.3 llama3.3-known-good
ollama pull llama3.3ollama cp is nearly free — it creates a new manifest referencing the same layers — and because those layers stay referenced, pruning won’t delete them. If the updated build misbehaves, run llama3.3-known-good instead. The extra disk cost is only the changed layers.
Perguntas frequentes
Does updating Ollama delete my models?
No. Updates replace the binary and app files only; models live in a separate directory (see the table above) and are never touched. A full uninstall is different — depending on platform, the models directory may or may not be removed — so copy ~/.ollama/models somewhere safe first if hundreds of gigabytes of downloads matter to you.
Does ollama pull re-download the whole model?
No. Layers are content-addressed, so a pull downloads only what changed since your last pull. If the tag hasn’t been republished, the command verifies your local copy and finishes in seconds without downloading anything.
How do I update all my models at once?
There’s no built-in command for it. Use a shell loop over ollama list, like the one shown above, or re-pull just the handful of models you actually run. Since unchanged models cost almost nothing to re-check, running the loop occasionally is harmless.
Why won’t a new model run until I update Ollama?
New model architectures need support in Ollama’s inference runtime, so recently released models often set a minimum Ollama version. If a pull or run fails with a message that the model requires a newer version of Ollama, update the app itself first and try again.
Can I skip several versions when updating?
Yes. Updates aren’t incremental — each release is a complete build, so you can jump from an old version straight to the latest with any of the methods above. It’s still worth skimming the release notes on GitHub for behavior changes if you’re jumping far.
Does LM Studio update the same way?
No — LM Studio is a separate application with its own in-app updater, and its runtime engines and model catalog update independently of Ollama. If you use both, see our guia completo do LM Studio for how its update flow works.

