A while back, we built AutoSync for people who needed Stripe data in Google Sheets.
We’ve rebuilt it from the ground up as SyncStaq.
The core idea is simple: Stripe is the source of billing data, but many founders and teams still do their reporting and analysis in Sheets. Repeated CSV exports become stale, require cleanup, and need to be repeated whenever Stripe records change.
SyncStaq keeps the data synced into separate Google Sheet tabs for charges, customers, subscriptions, invoices, and line items. The first sync backfills six months of history, and the ongoing sync runs hourly.
We’re launching on Product Hunt tomorrow and would especially appreciate feedback from people who still use Sheets for Stripe reporting or reconciliation.
What would make a Stripe-to-Sheets workflow genuinely useful for you?
https://www.producthunt.com/products/syncstaq?launch=syncstaq
the tab i'd add first is balance transactions.
charge.amountis gross, the stripe fee only lands on the linked balance transaction, asfeeandnet. currency conversion shows up there too, asexchange_rate. so a charges tab can tell you what you billed and never what you actually got paid. if you're reconciling against your bank you're really reconciling payouts, and payouts tie to balance transactions rather than charges.smaller one on invoices: sum
subtotal_excluding_taxrather thantotal, otherwise you're counting tax you remit anyway.Thanks for the feedback. The Charges tab shows the charge status. Can you clarify why that, or paid invoices matched with charges, would not provide the needed inputs for reconciliation?
I believe Total on invoices is excluding taxes. Are you seeing it include taxes in your sync?
status tells you the money got captured, not what you received. the fee isn't on the charge object at all, it lives on the linked balance transaction as
feeandnet, so charges plus paid invoices give you gross with no route to net. and a payout is a list of balance transactions rather than charges, so a charge captured on the 30th can settle into next month's payout, which puts charge date and money-in-bank date in different months.on invoices,
totaldoes include tax. that's why stripe shipstotal_excluding_taxandsubtotal_excluding_taxas separate fields, they'd have no reason to exist otherwise. pull any invoice that actually has tax on it andtotalminustotal_excluding_taxis the tax amount. worth checking, because if the sync mapstotalthen every vat/gst customer has a revenue column inflated by tax they hand straight back.The thing that breaks trust in a Stripe-to-Sheets sync isn't missing rows, it's silent overwrites. A refund or dispute a week later changes a charge you already reconciled against, and if the sync just replaces the row with the new current state, whoever built last month's report has no way to know the number they used isn't the number that's there now. Worth keeping a change log per row, or at least a last-modified diff, alongside the current-state tabs, not just overwriting in place.
What I like is that you're not asking people to move their reporting into another dashboard.
For a lot of teams, Stripe is where transactions happen, but Sheets is where questions get answered. Building around that existing workflow often feels more practical than trying to replace it.