Mode is an analytics platform built for analysts who work in SQL and then continue in Python or R. A report starts as a SQL query against a connected warehouse; the result set is handed to a notebook where pandas or an R data frame takes over for statistics, modeling, and richer charts. The same report carries an HTML/JavaScript report builder for the polished dashboard layer. It targets the workflow where a question outgrows what a drag-and-drop tool can express but doesn't justify a standalone data application.

SQL first, then notebooks

Every Mode report opens with the SQL editor running against your warehouse. Each query's output is exposed to the attached Python or R notebook as a data frame, so you query once and analyze in code without re-pulling data.

# SQL query result "orders" is available as a data frame
import pandas as pd
df = datasets['orders']

weekly = (df
  .assign(week=pd.to_datetime(df['created_at']).dt.to_period('W'))
  .groupby('week')['amount_usd']
  .agg(['sum', 'count']))

weekly['avg_order'] = weekly['sum'] / weekly['count']
weekly.tail()

This keeps the heavy aggregation in the warehouse (fast, scalable) and reserves the notebook for cohort math, regressions, or forecasts that SQL handles awkwardly.

Parameters, scheduling, and sharing

Reports support Liquid-templated parameters so one query serves many filtered views, and they can be scheduled to refresh and deliver to email or Slack. Definitions (queries and notebooks) are versioned within Mode, and shared reports run on a controlled schedule rather than re-querying on every viewer load, which keeps warehouse cost predictable compared with a live-tile dashboard.

Where Mode fits

Mode sits between a self-serve BI tool and a full data app. Analysts get SQL plus a real Python/R runtime in one place, which suits exploratory and statistical work that a click-builder can't cover. For governed, reusable metric definitions across an organization, a modeling layer like Looker fits better; for broad non-technical self-serve, see Metabase.

Frequently asked questions

What languages can I use in a Mode notebook? Python and R. The notebook receives each SQL query's result as a data frame, so you can move from warehouse aggregation to pandas or R analysis in the same report.

Does the notebook re-query the database? No. It operates on the result sets returned by the report's SQL queries, so the expensive aggregation happens once in the warehouse and the notebook works on the returned data frame.

Can Mode reports be parameterized and scheduled? Yes. Liquid-style parameters drive filtered variants, and reports can be scheduled to refresh and push to email or Slack on a set cadence.

Who is Mode aimed at? Analysts comfortable in SQL who also need Python or R for statistics, cohorts, or forecasting, packaged with a report layer for sharing. It is less suited to non-technical drag-and-drop self-serve.