Feature

Spreadsheet Reporting

Stop being the courier between your warehouse and spreadsheets

A hand-made export is a copy that goes stale with your name on it. Spreadsheet Reporting puts a published Data Mart into Google Sheets or Microsoft Excel, where business users build reports and refresh them, on a schedule in Google Sheets. The SQL behind every report is one click away.

Get started freeRead the docs →

Spreadsheet Reporting

Why OWOX

When the business asks for last quarter's numbers again, the Data Owner re-runs an export, and weeks later that file is still presented as current, with their name on it. Spreadsheet Reporting puts a published Data Mart into Google Sheets or Microsoft Excel, where business users pull and refresh it themselves.

  • Every report sits on its Data Mart's Destinations tab with Preview SQL, so you can read the query behind any sheet or workbook.
  • Business users pick columns, filters and fields from joined Data Marts; the definitions and the joins stay yours.
  • A refresh rewrites only the imported range, so your formulas, columns to the right and column order survive, in Google Sheets and Microsoft Excel alike; Google Sheets reports also run on a schedule.

Trust

Data Partner You Can Trust

users

176K1

Executives and data analysts across 20+ industries

G2 rating

4.9★2

“A trusted data analytics partner” — verified review

npm installs

165K3

In Open Source We Trust

Customers

Publish Once

The export you sent last month is still someone's current number

When business users work in spreadsheets, the Data Owner is the delivery mechanism. Every cut comes back as a request and leaves as a file. Nobody records who took which file or when, and the copy is still presented as current weeks later.

THE DATA OWNER

One Data Mart behind every sheet and workbook

Create a Google Sheets report from the Data Mart's Destinations tab: pick columns, including fields from joined Data Marts, add filters, sort and a row limit, and press Create & Run report. Business users' reports from either spreadsheet land there too, with Preview SQL.

One Data Mart behind every sheet and workbook

You see every report built on your Data Mart.

THE BUSINESS USER

Pull the cut you need into the sheet you have open

In the OWOX Extension for Google Sheets or the Microsoft Excel add-in, pick a Data Mart you have access to, tick columns, including fields from joined Data Marts, and run it into the sheet. Each header carries its field description as a note.

Pull the cut you need into the sheet you have open

The column arrives with its definition attached.

One definition for Google Sheets and Microsoft Excel — an export or a script that writes .xlsx gives each spreadsheet its own copy of the logic and no record of who has it. Here both spreadsheets read the same Data Mart, and every Excel run is logged in Run History by user, workbook and sheet.

For Data Owners

For Data Owners

Deliver once, and see every copy

You define the Data Mart and its field descriptions once. Every report built on it, in either spreadsheet, stays visible to you and traceable to your SQL.

Descriptions written once, read on every header

Descriptions written once, read on every header

Write an alias and a description for each field in the Output Schema. The alias names the column in the picker; the description becomes a note on the header cell once the report runs, in Google Sheets and Microsoft Excel alike.

A Google Sheets report, configured in one panel

A Google Sheets report, configured in one panel

On the Orders Data Mart's Destinations tab, Create new report: 12 of 28 columns, including fields from the joined Sessions and Session Ad Spend Data Marts, a filter on order_date, a sort by region, 5,000 rows. Create & Run report writes it to the sheet.

Schedule it, and the sheet updates without you

Schedule it, and the sheet updates without you

A Report Run trigger refreshes a Google Sheets report daily, weekly, monthly or on an interval, in the timezone you set; presets cover weekdays at 9:00, every hour and every 6 hours. Excel has no schedule: business users refresh from the ribbon.

For Business Users

For Business Users

Your numbers, in the spreadsheet you already use

Pick a Data Mart, choose columns and run it, in Google Sheets or Microsoft Excel. No SQL to write and no request to wait on.

Published Data Marts, inside Google Sheets

Published Data Marts, inside Google Sheets

Open the OWOX Data Marts sidebar and search the Data Marts you have access to, and nothing else. In Microsoft Excel the same list opens from the OWOX Data Marts ribbon tab, signed in with the Microsoft account Excel already uses.

Fields from joined Data Marts, one tick away

Fields from joined Data Marts, one tick away

Fields from other Data Marts sit in groups under the Data Mart's own: Customer Segment and Region from Customers, next to Order Date and Status from Orders. The Data Owner defined the join; you tick the field.

Set the refresh from the sidebar

Set the refresh from the sidebar

In Google Sheets, add a schedule under Scheduled refresh, daily at 09:00 in your timezone. Each refresh rewrites only the imported range: your columns and formulas to the right survive, and a row-2 formula fills down to every data row.

Editions

Compare plans

Individual

Your analyst, just for you.

$295 / month

Try free

Team

Your analyst for your leadership team.

$790 / month

Book a demo

Scale

Your analyst for the whole company.

Let's talk

Book a demo

See full pricing & comparison →

Why teams pick OWOX

Everything business needs

Refresh keeps their work

A refresh rewrites only the imported range. In Google Sheets and Microsoft Excel, columns and formulas to the right survive, and so does the column order you set.

The SQL behind every report

Each report sits on its Data Mart's Destinations tab with Preview SQL, so a number in a sheet traces back to your query.

One Data Mart, both spreadsheets

Google Sheets and Microsoft Excel read the same Data Mart, so one definition serves both teams instead of two delivery paths.

Every Excel run on record

Run History logs each Excel refresh by user, workbook and sheet, so you can read which Data Marts are actually pulled.

FAQ

Frequently asked questions

How is this different from exporting a CSV or scripting an .xlsx file?

An export is a copy: it carries no definition, goes stale, and leaves no record of who has it. Here every report reads a published Data Mart, its SQL is one click away on the Destinations tab, each header carries your field description, and Excel runs are logged in Run History.

What survives a refresh?

OWOX rewrites only the imported range: headers, data cells and any leftover rows from the last run. In Google Sheets and Microsoft Excel alike, cells and formulas to the right survive, a formula in row 2 to the right fills down to every data row, and your column order holds. Edits inside the range are overwritten.

What happens when the Data Mart's columns change?

A new column is appended at the right edge of the imported range. A removed column is deleted, and formulas that referenced it show #REF! instead of a wrong number. A renamed column counts as removed and added, so formulas pointing at it break too.

How does Microsoft Excel differ from Google Sheets?

Excel has no scheduled refresh: business users refresh from the ribbon while the workbook is open, one report per worksheet. The result is a plain range, not an Excel Table. Your formulas and column order survive a refresh. Sign-in uses the Microsoft account Excel is signed in with, and the destination creates itself on the first run.

What does the Data Owner set up?

For Google Sheets, one destination: a service account JSON key or a connected Google account, plus a Shared Drive folder if OWOX should create the documents. For Microsoft Excel, nothing: the add-in creates its destination on the first run. Business users see only the published Data Marts they have access to.

Where do business users get the Extension and the add-in?

The OWOX Extension for Google Sheets installs from the Google Workspace Marketplace. The Microsoft Excel add-in installs from Microsoft Marketplace, or a Microsoft 365 admin adds it for the whole organization from Integrated apps. Store installs update automatically.

What users are saying

Every claim has a receipt.

Real things real customers said — each quote pinned to a specific claim, straight from the quotes database.

A3re: trusting AI
Nodari RizunNodari RizunFounder & CEO, Pürblack®
“AI, by the nature of the models, will hallucinate. And because of that, you need something which will create guardrails to ensure that there are no hallucinations, that you can trust your data.”
C9re: one source of truth
Mark SimmonsMark SimmonsCMO, Pürblack®
“We had six or seven different channels and no single source of truth — it was almost impossible, a lot of guesswork.”
E7re: getting time back
Nodari RizunNodari RizunFounder & CEO, Pürblack®
“We regained time. And time is the one resource that never comes back.”

Recent updates

Publish the Data Mart once, then stop sending exports

Open a published Data Mart's Destinations tab and create its first Google Sheets report.

Get started free

Spreadsheet Reporting

References

  1. Internal OWOX data as of 2026-10-02
  2. G2 reviews of OWOX
  3. npm installs stat