Build interactive dashboards with a drag-and-drop canvas. Connect your databases, share with your team, enforce row-level security, all on infrastructure you own. The open source alternative to Power BI and Looker Studio: no black-box pricing, no per-seat fees, no data leaving your servers.
Your data is your business. The tool that reads it should be transparent, auditable, and yours.
AGPL-3.0 source code. Fork it, patch it, run it on a Raspberry Pi, at home or at work. We can never deprecate or paywall what you've already deployed.
Self-host on-premise or in your own cloud. Connect to Postgres, MySQL, BigQuery, Azure SQL. Queries run locally, and nothing leaves your network.
Read the code. Read the queries. Audit the security. No telemetry shipping back to a SaaS vendor. What you see in the repo is what runs in your stack.
Unlimited reports, unlimited users, unlimited datasources when you self-host. No seat licenses, no « first 5 are free, then $20/user » surprise.
If you'd rather not host yourself, our managed cloud runs on European infrastructure: your databases, uploaded files and metadata are stored in France, under EU jurisdiction (GDPR-native, no Cloud Act exposure).
No coding required. Connect your data, drag widgets, secure access, share with your team.
Freely position and resize widgets on a snap-to-grid canvas. Rotate, layer, group. Power BI-style freedom, on a multi-page layout.
Define per-row access on any data model with glob patterns (*@acme.com, alice*). Deny by default, owner and admin bypass; viewers only see what you allow.
Group reports in workspaces, invite members by email, assign Admin / Editor / Viewer roles. Move reports between workspaces, rename and delete with one click.
Native drivers for PostgreSQL, MySQL, Azure SQL, BigQuery. Or import CSV / Excel / Parquet / JSON locally with DuckDB. No warehouse required.
Click any chart to filter every other widget on the page. Highlights with opacity, drill paths, multi-select: exactly the interactions your users expect.
Organize content across pages with a sidebar navigator. Per-page filters, custom themes, and a preview/edit toggle, all without leaving the editor.
Build calculated fields with a SQL expression editor that knows your model. Sum, average, ratio, growth-over-time, anything DuckDB or your DB supports.
Export to PDF, PNG, Excel or print. Share reports via public links; viewers don't need accounts, RLS-protected reports stay locked down.
Light/dark themes, custom color palettes per legend value, gradients, shadows, borders, rotation. Fine-tune every widget down to the pixel.
Send any report by email on a recurring cron: daily digests, weekly summaries, monthly KPIs. PDF attached, configurable timeouts, delivered to whoever you list.
From simple bar charts to gauges, treemaps and pivot tables, all native and all themeable.
Read every line. Every dependency is open source.
Self-host for free forever, or let us run it for you on European infrastructure (hosted in France π«π·).
Yes. The self-hosted Community edition is free forever under the GNU AGPL-3.0: every feature, no user limit, no expiring trial. The hosted Cloud is a separate, optional service with a free tier and paid plans, for people who would rather not run a server.
You run it. The application sits on your infrastructure, queries your databases from there, and the data never travels to a vendor. Pricing is not per seat, so adding readers costs nothing. And the source is readable and forkable, which means the tool cannot be discontinued, re-priced or feature-gated out from under you. Point by point: Open Report vs Power BI, vs Looker Studio, vs Metabase.
PostgreSQL, MySQL, Google BigQuery, Azure SQL and DuckDB. CSV and Excel files can be imported directly and are queried through DuckDB.
Docker. One docker-compose.yml runs the published image (amd64 and arm64) as a single container: download it, generate three secrets, run docker compose up -d. A home server, a NAS or a Raspberry Pi is enough. You can also run it from source on a server with Node.js 22 or newer, with ./install.sh.
Not when you self-host: the SQL runs from your own server against your own databases, and nothing is sent anywhere else. If you choose the hosted Cloud instead, it runs on European infrastructure in France.
Yes. Row-level security filters the rows a user is allowed to read, at the semantic-model level, so it applies to every report built on that model. Workspaces and roles control who can view, edit or administer.
Yes. The AGPL-3.0 permits commercial use. The one obligation it adds: if you modify Open Report and offer the modified version to others over a network, you have to publish those modifications under the same licence. Using it unmodified, internally or with customers, requires nothing of you.
Launch the hosted app. No install required.
# Get the compose file
mkdir openreport && cd openreport
curl -fsSL -o docker-compose.yml \
https://raw.githubusercontent.com/cracky777/openreport/master/docker-compose.yml
# Generate the three secrets it needs
printf 'SESSION_SECRET=%s\nINTERNAL_TOKEN_SECRET=%s\nDATASOURCE_ENC_KEY=%s\n' \
$(openssl rand -hex 32) $(openssl rand -hex 32) $(openssl rand -hex 32) > .env
# Start it
docker compose up -d
Then open http://localhost:3001. The first user to sign up becomes the admin automatically.
One container, for amd64 and arm64: a home server, a NAS or a Raspberry Pi will do. Everything is kept in
the openreport-data volume; upgrade with docker compose pull && docker compose up -d.
On a public host, add COMPOSE_PROFILES=https to .env for nginx and a Let’s Encrypt
certificate.
Rather run it from source? Clone the repository and run ./install.sh (Node.js 22 or newer), as
described in the README.