· 14 min read · By Jason Dorn

PandaDoc + HubSpot Integration: How It Works (and 3 Things It Can't Do)

How to set up the PandaDoc + HubSpot integration, what data syncs, and the 3 bulk-generation limits that send teams to alternatives. 2026 pricing included.

Sample 'E-Commerce Platform & Brand Refresh' proposal document with deliverables, timeline, and pricing — the kind of personalized proposal teams generate from HubSpot deal data

PandaDoc + HubSpot Integration: How It Works (and 3 Things It Can't Do)

Your sales team lives in HubSpot. Your proposals, contracts, and quotes get sent through PandaDoc. Connecting the two should be the easy part. Most of the time it is. Then someone asks for 200 personalized renewals by Friday and the integration quietly stops being the answer.

This post walks through exactly how the PandaDoc + HubSpot connection works, what data actually syncs (and what doesn't), what it costs in 2026, and the three things that send teams looking for an alternative once their volume gets serious.

Key Takeaways

  • The integration installs in under 5 minutes from PandaDoc Settings, not from HubSpot
  • Inbound syncs Contact / Company / Deal properties plus deal-line products; outbound only syncs back Text, Date, Dropdown, Checkbox, and Radio Button fields
  • HubSpot integration starts at PandaDoc's Business plan ($49/seat/mo annual), not Starter
  • Bulk Send caps at 250 docs/year before $2/doc overages kick in, which is the gap most teams hit first

Sales rep working with HubSpot CRM data on screen
Photo by Austin Distel on Unsplash

How Do You Set Up the PandaDoc HubSpot Integration?

You install it from inside PandaDoc, not HubSpot. In PandaDoc, go to Settings > Integrations > HubSpot > Connect, grant access on the OAuth screen, and click Connect app. Sync takes up to 5 minutes to fully establish, and then a PandaDoc module appears in the right sidebar of every HubSpot Deal, Contact, and Company.

The connecting user has to be a PandaDoc Account Owner or Admin AND have HubSpot App Marketplace access. If either permission is missing, the OAuth flow completes but the sidebar widget never appears, which is the most common "did it work?" support ticket.

There's one quiet trap for European customers. PandaDoc EU accounts must initiate the connection from the PandaDoc side. If you're on an EU PandaDoc tenant and you start from HubSpot's marketplace listing instead, the install runs to completion and then silently fails. No error, just an empty sidebar. The official PandaDoc docs flag this in a single sentence that's easy to miss.

After the OAuth handshake, give it five minutes before testing. The webhook plumbing PandaDoc registers in HubSpot doesn't always activate immediately, and a "missing token" error in the first 60 seconds is meaningless.

What you actually need before you click Connect

  • PandaDoc plan: Business or higher (the integration is NOT included on Starter)
  • PandaDoc role: Account Owner or Admin
  • HubSpot role: anything with App Marketplace install rights (Super Admin, or a custom role with that permission)
  • A HubSpot Sales Hub seat for every PandaDoc user who'll generate documents from a record

What Data Syncs Between HubSpot and PandaDoc?

The sync is bidirectional but asymmetric. More flows in than flows back out, which is the source of most "wait, my field didn't update" complaints once teams start building real workflows.

Inbound (HubSpot → PandaDoc) covers nearly everything you'd expect:

  • Contact properties (first name, last name, email, phone, custom fields)
  • Company properties (name, domain, industry, custom fields)
  • Deal properties (deal name, amount, close date, pipeline stage, custom fields)
  • Deal-associated products with Price, Quantity, Discount, Name, Description, and Unit Cost

That last one matters for quotes and proposals. The line items already attached to a HubSpot deal flow into PandaDoc's pricing tables without a manual rebuild. If you've configured CPQ in HubSpot, you don't have to redo it in PandaDoc.

Outbound (PandaDoc → HubSpot) is more limited:

  • Document status updates (sent, viewed, completed, declined)
  • Field values from Text, Date, Dropdown, Checkbox, and Radio Button fields only
  • Line item modifications made inside the document
  • New contacts created from document recipients

The fields that don't sync back are the ones that bite people: Number fields, multi-line Text fields, and signature blocks. If your sales rep edits a quoted price inside the PandaDoc quote, that updated number does not write back to the HubSpot deal. If they add a paragraph of negotiation notes in a multi-line text block, that text stays trapped in the document. (PandaDoc HubSpot CRM docs, 2026)

Two laptops on a desk with sales dashboard data
Photo by fauxels on Pexels

A hidden-gem tip that saves an hour of debugging

The single most-common "my variable is blank" issue isn't a sync failure. It's an invisible mismatch between the variable string in your PandaDoc template and the canonical token PandaDoc generated for that HubSpot property. Sometimes there's stray whitespace. Sometimes the property name has a Unicode dash you can't see. Hand-typing the token from memory will look right and merge empty.

The fix: open any HubSpot record, click the PandaDoc module in the right sidebar, hit Actions > Show PandaDoc tokens, and copy the exact token string. Paste it into your template. Don't retype it. This is what PandaDoc's own community forums most often surface as the root cause of "the integration is broken" threads.

What Does PandaDoc + HubSpot Actually Cost in 2026?

The integration itself is free, but the plans you need to qualify aren't. PandaDoc's Starter plan ($19/seat/mo annual) does not include the HubSpot integration. The first tier with HubSpot access is Business at $49/seat/mo annual (PandaDoc Pricing, 2026). HubSpot Sales Hub adds its own per-seat costs on top.

For a 5-person mid-market sales team, here's what the math looks like in 2026:

Line item Cost Annual
HubSpot Sales Hub Professional, 5 seats × $90/mo annual $450/mo $5,400
HubSpot Sales Hub Pro one-time onboarding (year 1 only) $1,500
PandaDoc Business, 5 seats × $49/mo annual $245/mo $2,940
Total year 1 ~$9,840
Total year 2+ $8,340

That math is before any add-on credits, API limits, or Bulk Send overages. A team of five running 200 proposals a month will quickly find themselves looking at the next paragraph. (HubSpot Sales Hub pricing and PandaDoc pricing, 2026.)

PandaDoc business plan pricing tier
Photo by Pixabay on Pexels

What Are the 3 Things This Integration Can't Do?

Three patterns repeat across PandaDoc's G2 reviews and community threads. They aren't bugs. They're shape-of-the-product limitations that the integration was never designed to handle. If your use case lives inside one of these patterns, you'll outgrow the integration before you outgrow your seat count.

1. It can't generate documents in bulk from a HubSpot list

The integration is built to generate one document per record at a time. Open a Deal, click the sidebar, pick a template, send. Open the next Deal, repeat. There is no "select 200 contacts in this list, generate a personalized doc for each" button anywhere in the integration UI.

PandaDoc has a separate Bulk Send feature, but here's what's frustrating about it:

  • It does not read from a HubSpot list. You have to export from HubSpot to a CSV first, then upload the CSV inside PandaDoc.
  • It's accessed through the +Document menu in PandaDoc itself, completely outside the HubSpot integration sidebar.
  • It requires a Business+ plan with the Bulk Send volume add-on.
  • Included credits are 250 documents per year. After that, every document is $2 of overage (PandaDoc Send in Bulk docs, 2026).

For a team running 200 proposals a month, that's 2,400 documents per year. Subtract the 250 included credits and you're paying $4,300/year in overage charges on top of seat costs. Bulk volume is a separate revenue line for PandaDoc, not a workflow your HubSpot integration covers.

2. It can't push edited number, multi-line, or signature values back to HubSpot

This is the gap a HubSpot-first team feels first. Your sales rep negotiates a deal inside the PandaDoc proposal, knocks $5,000 off the price, and clicks Send. The deal closes. The original deal amount in HubSpot? Still the pre-negotiation number. Your CRM is now out of sync with the contract you actually signed.

It's not a sync bug. The outbound mapping just doesn't include Number fields. Lisa S., a Business Sales user in Telecommunications, summarized the related editing pain on G2: "Once a document is in PandaDoc, it can't be edited, and if we spot errors like incorrect dates or names, we have to delete the document and start from scratch." (G2 review, 2025) That same constraint shows up at the integration boundary.

The official workaround is to manually update HubSpot after each deal closes. The unofficial workaround most ops leads end up implementing is a Zapier flow listening to PandaDoc webhooks that writes back to HubSpot deal properties. That works, and it adds another tool to the stack you're paying for.

3. It can't reliably round-trip complex legal formatting

This one shows up the moment you try to use the integration for contract automation, not just proposals. Alex M., a Sales Operations Manager in IT Services, wrote on G2: "[The HubSpot sync] worked very well 95% of the time… legal documents with their various clauses and punctuation are not easy to bring into PandaDoc as the formatting gets lost during the cutover." (G2 review, 2025)

The 95% number is the trap. It's high enough that it works fine in your demo and your first 20 contracts. It's not high enough that you can run high-volume legal automation through it without a paralegal on cleanup duty.

Carmen H., a Marketing Executive in Restaurants, captured the related learning curve on G2: "To learn about how the CPQ functionality is taking time and lengthy learning curves." (G2 review, 2025)

If your contracts are simple and look the same every time, the round-trip works. If they're real legal documents with clause libraries, exhibits, or jurisdiction-specific language, plan for the 5%.

Person reviewing a printed contract document with pen
Photo by Pixabay on Pexels

When Does PandaDoc + HubSpot Stop Being the Right Tool?

The integration is genuinely good for its intended use case: a sales rep, looking at a single deal, sending a single proposal that needs an eSignature, with status updates flowing back to the deal record. If that describes your workflow, stop reading and go install it.

The shape that doesn't fit is bulk personalization from CRM data. "I want to generate 500 personalized account-review PDFs from my HubSpot Companies list, branded for each client, with deal-specific data merged in" is a workflow the integration was not designed for. PandaDoc would route you to Bulk Send (CSV export, $2/doc over 250/year), which is a different product wearing the same logo.

Bulk-Generate From HubSpot In Five Clicks With EZdoc

That gap is exactly why we built EZdoc's HubSpot integration. Bulk-merge from CRM data IS the product. Here's the math on a 200-document month:

PandaDoc + HubSpot EZdoc + HubSpot
Plan required Business ($49/seat/mo annual) Growth ($49/mo flat)
Bulk Send included 250 docs/year, then $2/doc 5,000 pages/month, no overage
200 proposals/month cost $588 seat + $4,300 overage = $4,888/yr $588/yr
CSV export step Required (Bulk Send is a separate UI) None — connects natively
Where the docs come from Sidebar widget OR Bulk Send (two flows) One flow for both single + bulk

Five clicks to generate 200 personalized PDFs from a HubSpot list:

  1. Connect HubSpot once via OAuth
  2. Pick a HubSpot list (Contacts, Deals, or Companies)
  3. Pick a template (the Corporate or Creative proposal templates merge against HubSpot deal fields out of the box)
  4. Hit Generate
  5. PDFs land in your "Documents" tab — or Drive folder, or sent via email per row

That's the workflow. No sidebar-then-Bulk-Send context switching. No $2/doc overage doing the math against your annual plan. No "where did that field go?" debugging because the template uses the same merge syntax for one record or a thousand.

If you want the visual demo, our HubSpot integration walkthrough shows it end-to-end in 90 seconds.

Be Clear About What EZdoc Doesn't Do

We don't ship eSignatures. We don't replace PandaDoc for proposal workflows that need redlining and a signing ceremony. The two products solve different problems:

Stay on PandaDoc if you need eSignatures, redlining, or a signing audit trail on every doc.

Use EZdoc if you need bulk-personalized PDFs from your CRM data without seat math or per-document overage.

Many teams run both — PandaDoc handles the signed agreements; EZdoc handles the renewals, account-review packets, monthly invoices, and quarterly business reviews that would otherwise burn through Bulk Send credits in a week.

If you need a starting point to merge HubSpot deal data into a proposal or follow-up invoice, grab one of these:

For a deeper dive on how the bulk-merge flow works once you've got a HubSpot list, see our CSV-to-1,000-documents tutorial or the full integrations roundup.

Try It Free — 25 Documents, No Credit Card

The free EZdoc tier covers 25 pages a month. That's enough to test bulk-generation against a real HubSpot list before you commit to a plan. No credit card. The OAuth connection takes 30 seconds.

Connect HubSpot in EZdoc →

Already running PandaDoc and just want the side-by-side? The EZdoc vs PandaDoc comparison lays out feature, pricing, and use-case differences in a single table.

FAQ

Is the PandaDoc HubSpot integration free?

The integration itself is included with qualifying PandaDoc plans, but those plans aren't free. The HubSpot integration is available starting on the PandaDoc Business plan at $49/seat/mo annual (PandaDoc Pricing, 2026). The Starter plan ($19/seat/mo) does not include HubSpot access. You also need a HubSpot Sales Hub seat for every user generating documents.

What HubSpot fields sync back to PandaDoc edits?

Only Text, Date, Dropdown, Checkbox, and Radio Button fields sync from PandaDoc back to HubSpot. Number fields, multi-line Text fields, and signature blocks do not sync back. This means a price negotiated inside a PandaDoc quote will not update the deal amount in HubSpot automatically. Most teams either update HubSpot manually after each deal or build a Zapier flow to listen to PandaDoc webhooks.

Can I generate documents in bulk from a HubSpot list using PandaDoc?

Not directly through the HubSpot integration. PandaDoc's Bulk Send feature requires a CSV export from HubSpot first, lives outside the HubSpot sidebar UI, requires a Business+ plan with a volume add-on, and includes only 250 documents per year. After that, overage is $2 per document. For 200 proposals a month, that's roughly $4,300/year in overage charges on top of seat costs.

Why does my PandaDoc EU account not connect from HubSpot?

This is a documented constraint. EU PandaDoc accounts must initiate the OAuth flow from the PandaDoc side. Starting from the HubSpot App Marketplace will appear to complete successfully but the sidebar module never appears in HubSpot records. To fix it, disconnect the failed install and start over from PandaDoc's Settings > Integrations > HubSpot > Connect.

What's the alternative if I need bulk document generation from HubSpot?

If your use case is "generate hundreds of personalized PDFs from CRM data without per-document overage," EZdoc connects directly to HubSpot Contacts, Deals, and Companies, with bulk merge as a first-class feature instead of a paid add-on. Growth plans run $49/mo flat for 5,000 pages with no per-document overage. Free tier includes 25 pages so you can test the workflow with real HubSpot data before deciding.

If you're picking between the two for proposal-heavy workflows, the EZdoc vs PandaDoc comparison lays out the tradeoffs.

— Jason