cirq
A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.
What it is and what it does
Cirq is a Python framework for designing and simulating quantum circuits, built to handle the constraints and opportunities of today's noisy intermediate-scale quantum (NISQ) computers. It provides abstractions for quantum gates, qubits, and measurements, along with tools for circuit transformation, optimization, and noise modeling. The package bundles integrations with multiple quantum hardware providers (Google, AQT, IonQ, Pasqal) and includes built-in simulators for testing circuits before running them on real hardware.
You use Cirq to define quantum circuits programmatically, apply gates and measurements, simulate their behavior, and prepare them for execution on quantum computers or high-performance simulators. It interoperates with NumPy and SciPy, supports parameterized circuits with symbolic variables, and offers hardware device modeling so you can account for real device constraints during development. The framework is actively maintained, well-documented, and used in research and production quantum computing workflows.
Use it for:
- Design and test quantum algorithms before running them on real quantum hardware.
- Simulate quantum circuits with noise models to study error effects on NISQ devices.
- Build parameterized circuits with symbolic variables for variational quantum algorithms.
- Develop cross-platform quantum applications that work with multiple hardware providers.
- Optimize and compile quantum circuits for specific hardware constraints and gate sets.
- Prototype fault-tolerant quantum algorithms and error correction schemes.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Cirq is a Python framework for writing, manipulating, and running quantum circuits on quantum computers and simulators, with support for parameterized circuits, noise modeling, and hardware device abstractions.
Yes. Cirq is a mature, actively maintained framework (release 46 days ago, 5046 GitHub stars) with no known vulnerabilities, permissive Apache 2.0 licensing, and low install friction. It is the right choice if you are building quantum algorithms, simulating circuits, or preparing code for real quantum hardware. Install it if quantum computing development is your goal.
Install
cirq on PyPI
pip
pip install cirquv
uv add cirqpoetry
poetry add cirqInstalling cirq
Before you install
Low install friction with a pure Python wheel. Active maintenance with a release 46 days ago and ongoing repository activity. Requires Python 3.11 or later. Six runtime dependencies (cirq-core, cirq-google, cirq-aqt, cirq-ionq, cirq-pasqal, cirq-web) are bundled, so installation is straightforward.
License in practice
Licensed under Apache 2.0 (permissive), allowing commercial and private use without restriction. You can use, modify, and distribute Cirq freely as long as you include the license notice.
Quickstart
pip install cirq
import cirq
qubit = cirq.GridQubit(0, 0)
circuit = cirq.Circuit(
cirq.X(qubit)**0.5,
cirq.measure(qubit, key='m')
)
simulator = cirq.Simulator()
result = simulator.run(circuit, repetitions=20)
print(result)
Requires Python 3.11 or later.
Verify before relying
- Performance characteristics and simulation speed limits compared to specialized simulators.
- Compatibility and integration details with specific quantum hardware providers beyond those listed.
- Memory requirements for large circuits or high repetition counts.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.11.0) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 6 — cirq-aqt, cirq-core, cirq-google, cirq-ionq, cirq-pasqal, cirq-web |
| Maintenance | actively maintained — 46 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 162,654/month — #10,593 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: cirq-1.7.0-py3-none-any.whl
Keywords: algorithms, api, cirq, google, google quantum, nisq, python, quantum, quantum algorithms, quantum circuit, quantum circuit simulator, quantum computer simulator, quantum computing, quantum development kit, quantum information, quantum programming, quantum programming language, quantum simulation, sdk, simulation
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
cirq-coreCirq-core provides the foundational framework…
permissive · top 15,000 on PyPI
cirq-webProvides browser-based 3D visualization tools…
permissive · top 15,000 on PyPI
cirq-googleProvides access to Google's Quantum Computing…
permissive · top 15,000 on PyPI
cirq-pasqalCirq-Pasqal is a Cirq integration module that…
permissive · top 15,000 on PyPI
pytketPytket is a Python interface to TKET, a quantum…
permissive · top 15,000 on PyPI
cirq-aqtCirq-AQT provides a Cirq integration that lets…
permissive · top 15,000 on PyPI
pennylanePennyLane is a quantum computing framework that…
permissive · top 15,000 on PyPI
hugrhugr provides a pure-Python implementation of…
permissive · top 15,000 on PyPI
stimStim is a fast simulator for quantum stabilizer…
permissive · top 15,000 on PyPI
cirq-ionqIntegrates Cirq quantum circuits with IonQ…
permissive · top 15,000 on PyPI