How to Install Jinja2 in Python

v3.1.6 Web & HTTP Python >=3.7

A very fast and expressive template engine.

Install pip install Jinja2

What is Jinja2?

A very fast and expressive template engine.

Jinja is a fast, expressive, extensible templating engine. Special placeholders in the template allow writing code similar to Python syntax. Then the template is passed data to render the final document.

- Template inheritance and inclusion. - Define and import macros within templates. - HTML templates can use autoescaping to prevent XSS from untrusted user input. - A sandboxed environment can safely render untrusted templates. - AsyncIO support for generating templates and calling async functions. - I18N support with Babel. - Templates are compiled to optimized Python code just-in-time and cached, or can be compiled ahead-of-time. - Exceptions point to the correct line in templates to make debugging easier. - Extensible filters, tests, functions, and even syntax.

Jinja's philosophy is that while application logic belongs in Python if possible, it shouldn't make the template designer's job difficult by restricting functionality too much.

Quick Start

Minimal example to get started with Jinja2:

import jinja2

print(jinja2.__version__)

Installation

pip (standard)

pip install Jinja2

Virtual environment (recommended)

python -m venv venv
source venv/bin/activate   # Windows: venv\Scripts\activate
pip install Jinja2

pip3

pip3 install Jinja2

conda

conda install -c conda-forge Jinja2

Poetry

poetry add Jinja2

Dependencies

Installing Jinja2 will also install these packages:

Verify the Installation

After installing, confirm the package is available:

python -c "import jinja2; print(jinja2.__version__)"

If this prints a version number, installation succeeded. If you see a ModuleNotFoundError, see the errors section below.

Installation Errors

Common errors when installing Jinja2 with pip.

ModuleNotFoundError: No module named 'jinja2'

Cause: The package is not installed in the current Python environment.

Fix: Run pip install Jinja2. If using a virtual environment, ensure it is activated first.

ModuleNotFoundError: No module named 'jinja2' (installed but still failing)

Cause: pip installed the package into a different Python than the one running your script.

Fix: Use python -m pip install Jinja2 to install into the interpreter you are running.

ImportError: cannot import name 'X' from 'jinja2'

Cause: The function or class does not exist in the installed version.

Fix: Check the version with pip show Jinja2 and upgrade with pip install --upgrade Jinja2.

pip: command not found

Cause: pip is not in PATH or Python was not added to PATH during installation.

Fix: Try python -m pip install Jinja2. On macOS/Linux try pip3.

PermissionError: [Errno 13] Permission denied

Cause: No write access to the system Python package directory.

Fix: Use a virtual environment, or add --user: pip install --user Jinja2

SSL: CERTIFICATE_VERIFY_FAILED

Cause: pip cannot verify PyPI's SSL certificate — common behind corporate proxies.

Fix: Try: pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org Jinja2

ConnectionError: Failed to establish a new connection

Cause: Server unreachable, URL invalid, or firewall/proxy blocking the connection.

Fix: Verify the URL and network access. Set HTTP_PROXY / HTTPS_PROXY env vars if behind a proxy.

SSLError: CERTIFICATE_VERIFY_FAILED

Cause: The remote server's SSL certificate cannot be verified.

Fix: Update CA certificates on your system. For testing only, disable SSL verification (never in production).

Recent Releases

VersionReleased
3.1.6 latest 2025-03-05
3.1.5 2024-12-21
3.1.4 2024-05-05
3.1.3 2024-01-10
3.1.2 2022-04-28

Full release history on PyPI →

Manage Jinja2

Upgrade to latest version

pip install --upgrade Jinja2

Install a specific version

pip install Jinja2==3.1.6

Uninstall

pip uninstall Jinja2

Check what is installed

pip show Jinja2

Last updated: 2026-04-11 • Data from PyPI