Reports vs. Notebooks

In PushMetrics, Reports and Notebooks cater to different needs within data management and dissemination. Reports are designed for straightforward, automated distribution of data exports like SQL query results to various platforms, including Email, Slack, and cloud services. They are optimal for routine, simple tasks that require regular delivery, essentially automating repetitive reporting functions with minimal complexity.

Notebooks, in contrast, offer a more advanced solution for complex workflows that necessitate conditional logic, loops, or custom API interactions. They provide a low-code environment for a deeper, more interactive form of data analysis and workflow automation. While leveraging graphical interfaces and pre-built functions, Notebooks facilitate tasks that require a nuanced approach to data manipulation and are suited for users looking for customizable and sophisticated data processing capabilities.

Reports simplify and automate direct data sharing for basic reporting needs, whereas Notebooks enable comprehensive data analysis and the execution of complex workflows, accommodating a broader range of data engineering and analytical requirements.


Reports in PushMetrics are designed to distribute document exports, such as SQL query results to specified destinations like Email, Slack, Microsoft Teams, and cloud services. They facilitate a regular "push" or delivery, by defining a schedule or a webhook that triggers the report on request.

In short, Reports are meant to cover reporting use cases that are so simple they can feel tedious in a Notebook.

A couple of a examples for a simple Report would be:

  • A delivery of a SQL result as a CSV every morning
  • A Tableau dashboard image export delivered to a Team Slack channel
  • A message referencing important data points, sent along with a Chart into a Slack channel or email
  • A KPI summary send to Slack
  • A large SQL query export as CSV uploaded to the S3 Bucket of a client.
A Revenue KPI Report in Slack


Notebooks in PushMetrics are most suited for any workflow that is more complex than the kind described above. If you need to do anything conditionally or in a loop then Notebooks are the right place. You may take this as far as designing and parameterizing custom API calls and handling the returns using any of our

Notebooks introduce a low-code environment for building and automating workflows, simplifying the process of data analysis and task management. Inspired by the concept of Python notebooks, this feature is designed to create an intuitive, visual approach to handling data without extensive coding. Notebooks allow for the execution and scheduling of tasks, using graphical interfaces, pre-built functions, and some minimal coding with Jinja templating for users to handle data when necessary.

PushMetrics offers a suite of pre-built components for tasks such as SQL queries, API requests, and messaging. These componenent, called Blocks, are available in both reports and notebooks.

Some examples of a Notebook workflow could be:
- Running a SQL Query every 10 minutes. If a certain value in the query reaches a threshold, send a pre-configured Slack alert into a channel.
-  Fetching a list of Email addresses and filter from an API Endpoint, then iterating over the list, sending out an email to each email with the correctly filtered Tableau Dashboard attached.