Skip to content

Reports & exports

The Reports page is a catalog of prebuilt, export-ready datasets - the ones merchants most often pull into a spreadsheet or a BI tool. Each card is a one-click CSV download, generated on demand and scoped strictly to the current store. There is nothing to configure: pick a report, click Download CSV, done.

Where it lives and what the window is

Open Reports from the dashboard sidebar. Every count and export covers a rolling 90-day window (customer and CRM exports cover all identified shoppers). Each card shows an estimated row count for the window before you download.

Available reports

Seven reports ship today, each exported as CSV:

ReportWhat it contains
Orders exportEvery order in the last 90 days with AI attribution, currency, totals, and shopper email.
Customer CRM exportAll identified shoppers with lifecycle stage, total orders, LTV, and last-seen timestamp.
Conversation transcriptsAll shopper → AI chats in the window, including status, message count, and handoff flags.
Captured leadsEvery email / SMS / handoff lead the AI captured, with its purpose and current status.
Abandoned cartsCarts that entered the abandoned state, with shopper email, cart value, and recovery status.
Message feedbackThumbs-up / thumbs-down ratings shoppers left on specific AI replies.
AI-attributed revenueDaily totals showing how much revenue the AI actively influenced (last-touch attribution).

How exports are generated

Each export is generated on demand from the records currently stored in Zubby. Source sync, ingestion and processing delays can still affect freshness; compare representative records with the source platform. Downloads stream from /api/v1/merchant/<storeId>/reports/<reportId>/export, and every request is tenant-scoped: a report can only ever return rows for the store you are in.

AI-attributed vs. all orders

The Orders export includes attribution columns for every order, while the AI-attributed revenue report is filtered to orders Zubby influenced (last-touch). Use the first to reconcile against your store admin, and the second to size Zubby’s contribution. They will not match - that’s expected.

A typical pull

  1. Open Reports and check the row-count estimate on the card - it tells you roughly how much data the window holds before you download.
  2. Click Download CSV; the file is generated live from the same data your dashboards read.
  3. Load it into your spreadsheet or BI tool. Because every report is CSV with stable columns, a repeated weekly pull can feed the same sheet each time.

Scheduling exports

The Reports catalog is on-demand only - there is no per-report scheduler. The one recurring email Zubby sends is the Monday weekly-review digest (see Analytics). For recurring conversation and lead reads, use the documented REST API on your own schedule. It does not expose the complete Reports catalog as public read endpoints.

Programmatic access

Prefer to pull data into a pipeline rather than click a button?

  • REST API - read conversations and leads with a scoped Pro API key. Catalog and order endpoints ingest data; they are not order, customer, or revenue-report read APIs.
  • Webhooks - receive a continuous stream of supported events. Delivery is best effort, with no automatic retry; maintain your own reconciliation and monitoring.

Gotchas

  • The 90-day window is fixed for prebuilt reports. The public API does not provide arbitrary historical report ranges. Keep your own approved exports for longer analysis and ask support about unmet reporting needs.
  • Row-count estimates on the cards are approximate and meant for a quick sense of size, not an exact total.
  • Large exports can take a few seconds to generate because they run live - that is normal, not a hang.
  • Exports contain shopper PII (emails). Handle the files in line with your privacy obligations - see Security & privacy.

Related

  • Analytics - dashboards, attribution, and the weekly-review digest.
  • Customers - the CRM the customer export is drawn from.
  • REST API - programmatic data access.

Missing something, or found an error on this page?

Contact support and include the URL of this page (/docs/reports).