---
module: reports.builder
title: Report Builder
tab: Customer
order: 10
audience: customer
---

Build your own reports from HiveIQ fleet data — incidents, ATM health, transactions, and more — then run them on demand or on a schedule and download the results.

## 📋 The Two Tabs
- **Templates** — your saved report definitions (and reports others have shared with you).
- **Run History** — every report that has been generated, with its status and a download link.

> Turn on **Auto-refresh** (top right) to keep statuses and results updating on their own.

## 🆕 Create a Report Template
1. On the **Templates** tab, click **+ New Report**.
2. Give it a **Name** and pick a **Data Source** — Incidents, ATM Health, Transactions, Fleet Tasks, Agent Versions, or Agent Modules.
3. Choose an **Output Format**: **CSV** (for spreadsheets and BI tools) or **JSON** (for in-app preview).
4. Under **Columns**, click the fields you want to include in the report.
5. (Optional) Add a **Description** so the report is easy to recognize later.
6. Save.

> You must select at least one column (or a group-by field) before you can save.

## 📊 Summarize with Group By
1. Pick one or more **Group By Fields** to combine rows that share the same value (for example, group incidents by ATM).
2. A **count** is always included for each group.
3. (Optional) Add **Aggregations** — **SUM**, **AVG**, **MIN**, or **MAX** — on numeric fields to total or average them per group.

## ▶ Run a Report
1. Click **▶ Run** next to a template.
2. Choose a **saved query** for a quick, pre-set run, or pick **Custom** to set a date range and select specific ATMs just for this run.
3. Submit — the run is queued and you're taken to **Run History** to watch it finish.

## 🔖 Saved Queries
Queries are reusable run settings (a date range plus a chosen set of ATMs) attached to a template.
1. Click **Queries** on a template, then **+ New Query**.
2. Name it, pick a **date range** (All time, Last 7/30 days, This month, Last month, or a Custom range), and move the ATMs you want into the selected list.
3. Save — the query is now available whenever you run that report.

> Queries also let you set which run a schedule uses (see below).

## 🕐 Schedule a Report
1. In the report form, enable scheduling and choose a frequency: every X minutes, hourly, daily, weekly, or monthly.
2. Set the time (and days, for weekly/monthly) for it to run automatically.
3. On the **Queries** panel, click **Set Scheduled** on the query the schedule should use.

> The **Next Run** column on the Templates tab shows when a scheduled report will fire next. Scheduled reports are delivered to you automatically inside HiveIQ.

## 🤝 Share a Report
- Click **Share** on any of your templates to make it available to other users; click **Unshare** to stop.
- Reports shared with you appear under **Shared Reports**, where you can run them yourself.

## 📥 View & Download Results
On the **Run History** tab you'll see each run's:
- **Status** — Pending, Running, Completed, or Failed.
- **Rows** — how many rows the report produced.
- **Triggered By** — the person who ran it, or "Scheduled".
- **Started** / **Completed** — timestamps.

For a **Completed** run, click **Preview** to see the first rows in-app, or **Download** to save the full file. A **⚠ Failed** run shows the reason when you hover over it.

> Old runs you no longer need can be removed with **Delete**.
