How to sync Paddle subscriptions to HubSpot
By Kayabyte
Your customers pay through Paddle, and your sales and success team works in HubSpot. This guide lists the ways to get Paddle subscription data into HubSpot contacts and companies, starting with what HubSpot and Paddle offer on their own, and says where each one stops. It covers Paddle Billing. HubSpot and Paddle facts last checked 11 November 2026 against their documentation.
Start with the question: what do you need in HubSpot?
Most teams want some of: the plan, the status (active, trialing, past due, canceled), MRR, the next billing date, the trial end date and the date of the last failed payment. Decide which of these your team will really use in lists, reports or workflows before you pick a method. A one-off list is a different job from live data.
Route 1: HubSpot’s own commerce tools
HubSpot’s help centre names only HubSpot payments and Stripe as payment processors for its commerce tools, and it describes migrating subscriptions from a third-party processor or billing platform as not currently supported (HubSpot: billing and subscription migration options). The Stripe connection syncs Stripe customers, invoices, products and subscriptions (HubSpot: use Stripe with HubSpot). Paddle is not mentioned in either article, so this route does not help a Paddle account.
Route 2: Paddle’s own HubSpot sharing
Paddle’s documentation lists HubSpot among the tools you can share Subscription Metrics data with, next to Slack, Intercom and Salesforce (Paddle: ProfitWell Metrics). Paddle’s help centre has a field list for the HubSpot integration with Customer ID, names, MRR, Plans, Status, Created On, Activated On, Churned On, Engagement and Total Spend (Paddle: HubSpot fields), and says it can sync at contact, company or deal level. Paddle’s docs say the metrics dashboards and reports refresh every 3 to 6 hours. We have not tested this integration against a Paddle Billing account, so check in your dashboard what it writes, which statuses it uses (the field list shows its own set, such as churned_voluntary) and how it handles discounts, tax and currencies, which Paddle’s page does not state.
Route 3: a CSV export and a HubSpot import
Paddle Billing can build a Subscriptions report: one row per subscription with the status, customer email, billing dates, discounts and amounts, as a CSV you download from the Reports section or the API (Paddle: subscriptions report). Notes from Paddle’s page: the report has no MRR column, amounts exclude tax, and the data updates daily and reflects the current state only. Generated report files can be downloaded for 14 days (Paddle: generate reports). HubSpot’s import tool updates an existing contact when the email matches and changes only the properties you map (HubSpot: deduplication of records). So the steps are: create the properties first (HubSpot: create and edit properties), export the report, work out MRR in a spreadsheet (see how to calculate MRR from Paddle), and import. This is a fine monthly snapshot for a small account. It is out of date the day after, and it does not tell HubSpot when a payment fails.
Route 4: no-code tools
Zapier, Make and similar tools can listen to Paddle events and update HubSpot records. See Paddle and HubSpot without Zapier for what that takes, including how to check a Paddle app’s triggers and what a webhook-based setup leaves to you.
Route 5: write it yourself
Paddle Billing sends webhooks for subscriptions, transactions and customers, and signs them so you can verify them (Paddle: webhooks). HubSpot’s API can create and update properties and records. A small service in between is a few days of work to build and an ongoing job to keep working: out-of-order events, retries, rate limits, free-mail domains and the monthly maths all need handling.
Route 6: an app
Full disclosure: we built Paddle Sync: Subscriptions & MRR, which is route 5 packaged. You paste a Paddle Billing API key; the app creates one webhook destination in Paddle, imports your customers, subscriptions and the last 12 months of transactions, and then writes 13 properties (plan, status, MRR, ARR, currency, next billing date, trial end, cancellation date, first payment, lifetime value, last failed payment, seats and customer ID) to contacts and companies as events arrive. It adds cards, timeline notes and, if you switch it on, one deal per subscription. Contacts are matched by email, and companies by the contact’s existing company or the email domain, never for free-mail domains. Free up to 50 active subscriptions; Growth USD 29 per month up to 500; Scale USD 79 per month up to 5,000; 14 days of Scale on install without a card. It installs from our site, not the HubSpot Marketplace, and it works with Paddle Billing only, not Paddle Classic.
Which one to pick
- A few dozen customers and a monthly look: the CSV route.
- Paddle’s own sharing: worth a look first because it is made by Paddle; test what it writes.
- You need live status, failed-payment and cancellation triggers without maintaining anything: an app or your own service.
More detail
- How to calculate MRR from Paddle
- How to show MRR on HubSpot contacts and companies
- HubSpot workflows for failed Paddle payments and cancellations
FAQ
Does HubSpot have a native Paddle integration? HubSpot’s commerce tools support HubSpot payments and Stripe as payment processors; Paddle is not among them. Paddle’s documentation lists HubSpot as a place to share Subscription Metrics data.
Can I sync Paddle to HubSpot for free? Yes, in two ways: Paddle’s own sharing, which Paddle describes as free in its metrics material, and a CSV export plus a HubSpot import. Paddle Sync is also free up to 50 active subscriptions.
Does the sync work with Paddle Classic? The Paddle Sync app does not; it needs a Paddle Billing API key. Paddle’s help page on Zapier alerts says it applies only to Paddle Classic.
How often does the data update? An event-based sync updates when Paddle sends the event, in our tests within about a minute. A CSV import is as old as the file.
Questions or corrections: support@kayabyte.dev. HubSpot is a registered trademark of HubSpot, Inc. Paddle is a trademark of Paddle.com, used here only to say which service is meant. Kayabyte is an independent developer and is not affiliated with HubSpot or Paddle.com.
More guides
- How to audit and clean up HubSpot properties without breaking anything
- How to stop a HubSpot deal reaching Closed won until it is approved
- How to bulk create custom properties in HubSpot from a CSV or spreadsheet
- How to send a client an hours statement from HubSpot
- How to copy properties from one HubSpot account to another
- DealHub or a lightweight approval app for HubSpot deals?
- How to export all properties from HubSpot, with their dropdown options
- How to bulk add dropdown options (and properties) in HubSpot
- HubSpot deal approval options compared: native approvals, workflows, DealGuard and Deal Approvals & Stage Gate
- HubSpot deal approvals without Enterprise: what Free, Starter and Professional can do
- HubSpot discount approval on Sales Hub Professional or Starter
- How to set up discount approvals in HubSpot (deal desk)
- How to see what your HubSpot pipeline looked like last week
- How to track prepaid hours and retainers in HubSpot
- Creating HubSpot properties in bulk: HubSpot import, the API, Lift and Bulk Property Import & Export compared
- HubSpot property naming conventions: a template for internal names, groups and labels
- Tracking retainer hours in HubSpot: StopWatch, PSOhub, a spreadsheet or Retainer Wallet
- A weekly stale-deal report in HubSpot, without Enterprise
- Time tracking on HubSpot tickets: what HubSpot has and the options
- Insycle or Bulk Property Import & Export for HubSpot properties?
- How to require approval before a deal moves stage in HubSpot
- How to require fields before a HubSpot deal moves to a stage
- Retainer rollover rules: expire, capped or full, with examples
- RevOps Deal Desk & CPQ vs Deal Approvals & Stage Gate for HubSpot
- How to stop reps skipping deal stages or moving deals backward in HubSpot
- Export property history in HubSpot: who changed it and when
- How to track a retainer balance per client in HubSpot