← All resources
GuideMay 23, 202630 min read

HubSpot CRM Setup for B2B SaaS PLG Companies: Complete Guide

Learn how to set up HubSpot CRM for PLG companies. Get product data synced, configure lifecycle stages, build PQL scoring, and optimize deal pipelines.

Quick answer: Setting up HubSpot CRM for PLG companies requires syncing product usage data into HubSpot, configuring PLG-specific lifecycle stages, building PQL scoring based on usage signals, and automating sales handoffs. The biggest challenge is getting product data out of your app and into HubSpot - most PLG companies either build custom integrations, use reverse ETL tools like Hightouch or Census, or use purpose-built solutions like Zoody that sync product events directly to HubSpot without a data warehouse.

  • Product data sync - Zoody, reverse ETL (Hightouch/Census), or custom-built API integration
  • Lifecycle stages - Customize for PLG: Subscriber → Trial User → Activated User → PQL → Opportunity → Customer
  • PQL scoring - Combine feature adoption, usage frequency, team size, and collaboration signals
  • Deal pipelines - Separate pipelines for self-serve conversion, expansion, and enterprise sales
  • Workflows - Automate PQL alerts, expansion plays, churn risk detection based on product signals

The #1 Challenge PLG Companies Face with HubSpot CRM Setup

Most B2B SaaS companies running a product-led growth motion hit the same wall when setting up HubSpot: your product usage data lives in your application database or analytics tool, not your CRM. HubSpot knows when someone fills out a form or opens an email, but it has no idea that Sarah from Acme Corp just invited 12 teammates, configured SSO, and ran her first export - the exact signals that indicate she's ready to buy.

This creates a massive blind spot. Your sales team sees contacts and companies in HubSpot, but they don't know who's actually using the product, what features they've adopted, or when usage patterns indicate buying intent. Meanwhile, your product analytics tool (Mixpanel, Amplitude, PostHog, etc.) shows beautiful usage dashboards, but that data never makes it to the people who need to act on it.

Why Traditional HubSpot Setup Fails for PLG

Every HubSpot setup guide assumes a sales-led motion: marketing generates leads through forms and ads, sales qualifies and closes them, customer success manages accounts. This framework doesn't work when your product is the primary acquisition and qualification channel.

Traditional lead scoring looks at demographic data (company size, job title) and engagement signals (email opens, content downloads). But for PLG companies, the strongest buying signals come from product behavior: feature adoption, usage frequency, collaboration patterns, approaching plan limits.

Standard lifecycle stages (Subscriber → Lead → MQL → SQL → Opportunity → Customer) don't map to the PLG funnel. You need stages that reflect the product journey: free signup → activation → active usage → product-qualified → sales conversation → paid customer.

The Product Data Gap: What You're Missing

Without product usage data in HubSpot, you can't:

  • Identify which free users are actually good-fit customers showing buying intent (PQLs)
  • Trigger expansion plays when teams grow or hit usage limits
  • Personalize outreach based on which features someone has adopted
  • Route high-value accounts to sales at the right moment
  • Score accounts by product health for customer success prioritization
  • Build accurate conversion funnels from signup to revenue

RevOps managers running PLG companies need HubSpot to be a single source of truth that combines product usage, sales activity, and customer data. That only works if product signals flow into HubSpot in real time.

Prerequisites: What You Need Before Setting Up HubSpot for PLG

Before you start configuring HubSpot for product-led growth, make sure you have these pieces in place:

Required HubSpot Features for PLG

You need HubSpot Professional or Enterprise tier. The Starter tier doesn't include the features required for PLG automation:

  • Custom properties (to store product usage data)
  • Workflows with complex triggers and branching logic
  • Custom reports and dashboards
  • API access (if building custom integrations)
  • Multiple deal pipelines
  • Calculated properties (for real-time scoring)

Most PLG companies need Professional ($800/mo for 2,000 contacts) or Enterprise ($3,600/mo for 10,000 contacts). If you're on Starter, you'll hit limitations immediately.

Mapping Your PLG Funnel

Write down your actual user journey before touching HubSpot. Define each stage clearly:

  1. Signup - User creates account (free trial, freemium, or waitlist)
  2. Activation - User completes core setup actions that indicate they "got" the product (invited team, connected integrations, completed first workflow)
  3. Active usage - User returns regularly and uses core features
  4. Product-qualified - Usage signals indicate strong buying intent (team collaboration, approaching limits, power user behaviors)
  5. Sales conversation - Rep engages, trial extension or demo scheduled
  6. Paid customer - Subscription active

Your stages might differ. A data pipeline tool might define activation as "first successful data sync." A collaboration tool might use "first team invite." The key is having clear, measurable definitions before building automation.

Also identify your key usage signals that indicate buying intent:

  • Feature adoption milestones (SSO configured, API used, exports run)
  • Usage frequency (daily active, weekly sessions)
  • Team size (seats occupied, invites sent)
  • Engagement depth (number of workflows created, integrations connected, data volume processed)
  • Plan limit proximity (80% of free tier used, hitting rate limits)

Write these down with specific thresholds. "Active user" means what exactly? 3+ sessions per week? 5+ actions per session? You'll need these definitions for scoring and automation.

Step 1: Getting Product Usage Data Into HubSpot

This is the hardest part and the most critical. You have three options.

The Three Ways to Sync Product Data

Option 1: Build a custom integration using HubSpot's API

If your engineering team has bandwidth, you can build a service that pushes product events to HubSpot via the Contacts API and Companies API. When a user completes an action in your product, your backend makes an API call to update their HubSpot contact record.

Pros: Full control, no third-party costs Cons: Engineering time (2-4 weeks to build, ongoing maintenance), HubSpot API rate limits (100 calls per 10 seconds on Professional), error handling and retry logic, monitoring and alerting

Most PLG companies start here, underestimate the complexity, and then look for alternatives after the custom integration becomes a maintenance burden.

Option 2: Reverse ETL from your data warehouse

If you already have a data warehouse (Snowflake, BigQuery, Redshift), you can use a reverse ETL tool like Hightouch (starts at $350/mo) or Census (starts at $400/mo) to sync product usage data from the warehouse to HubSpot.

This approach requires:

  • Data warehouse infrastructure ($100-$1,000+/mo)
  • Event tracking piped into the warehouse (Segment, RudderStack, or custom)
  • SQL knowledge to write sync queries
  • dbt models or warehouse tables that aggregate usage metrics
  • Engineering support to maintain the pipeline

Pros: Works if you already have warehouse infrastructure, flexible for complex data models Cons: Expensive ($500-$1,500/mo total), slow setup (4-8 weeks), requires SQL and data engineering, sync lag (typically 15 minutes to 1 hour)

This is the right choice if you're a larger PLG company with strong data infrastructure. But most RevOps managers don't have a data warehouse or the engineering support to maintain it.

Option 3: Use Zoody to sync product events directly to HubSpot

Zoody is built specifically for RevOps managers who need product usage data in HubSpot without engineering work or warehouse infrastructure. You send product events from your app to Zoody's API (one line of code), and Zoody syncs them to HubSpot contact and company records in real time.

Setup:

  1. Install Zoody's tracking snippet or use the API (similar to how you'd instrument Mixpanel or Segment)
  2. Connect your HubSpot account (OAuth, takes 30 seconds)
  3. Map which events and properties to sync to HubSpot
  4. Zoody handles rate limiting, retries, deduplication, and keeps records updated

Pros: No warehouse required, fast setup (minutes not weeks), real-time sync, built for RevOps teams, flat-rate pricing ($149/mo Pro, no usage-based fees) Cons: Only works with HubSpot (not multi-CRM), doesn't replace your product analytics tool (it complements Mixpanel/Amplitude)

This is the fastest path for most PLG companies. You still need to track events somewhere (either with Zoody's SDK or by piping events from your analytics tool), but you skip the warehouse and reverse ETL complexity.

Essential Product Properties to Create in HubSpot

Once you have a sync method, create these custom properties in HubSpot to store product usage data:

Contact-level properties:

  • product_signup_date (date) - When user created account
  • product_activation_date (date) - When user completed activation milestone
  • last_active_date (date) - Most recent product login or activity
  • total_sessions (number) - Lifetime session count
  • sessions_last_7d (number) - Sessions in past week
  • sessions_last_30d (number) - Sessions in past month
  • features_adopted (number) - Count of features user has tried
  • key_feature_used (checkbox) - Has user completed your core action
  • current_plan (dropdown) - Free, Trial, Pro, Enterprise
  • team_role (dropdown) - Owner, Admin, Member
  • pql_score (number) - Product qualification score (0-100)

Company-level properties:

  • account_created_date (date) - First user signup from this domain
  • total_seats_occupied (number) - Active users from this account
  • total_seats_invited (number) - Total team size including pending invites
  • account_mrr (number) - Current MRR if paid customer
  • plan_limit_usage_pct (number) - Percentage of plan limits used
  • integrations_connected (number) - Count of integrations active
  • account_health_score (number) - Usage health metric (0-100)
  • expansion_opportunity (checkbox) - Flagged for upsell based on usage

Use single-line text for IDs, checkboxes for binary flags, dropdowns for categorical data, and number fields for metrics. Date properties let you build time-based reports and workflows.

Contact vs Company Properties: Where to Store Product Data

Store individual user behavior (sessions, feature adoption, last active) on contact records. Store account-level metrics (team size, integrations, plan usage) on company records.

Many PLG products have multiple users per account. HubSpot's contact-to-company association lets you roll up individual usage into account-level signals. For example:

  • Contact property sessions_last_30d on each user
  • Company property active_users_last_30d calculated from associated contacts
  • Workflow that counts contacts where sessions_last_30d > 0 and updates the company property

This approach gives sales reps visibility into both individual champions and overall account health.

Step 2: Configure Lifecycle Stages for PLG Motion

HubSpot's default lifecycle stages assume a linear sales process. PLG companies need stages that reflect the product journey.

PLG-Specific Lifecycle Stage Framework

Replace HubSpot's default stages with these:

  1. Subscriber - Signed up for mailing list or waitlist, but not yet a product user
  2. Trial User - Created product account, not yet activated
  3. Activated User - Completed activation milestone, actively using product
  4. Product Qualified Lead (PQL) - Usage signals indicate buying intent
  5. Opportunity - Sales engaged, deal created
  6. Customer - Paying subscription active
  7. Evangelist (optional) - Power user, referral source, case study candidate

To configure these in HubSpot:

  • Go to Settings → Properties → Contact properties
  • Find "Lifecycle stage" property
  • Edit the dropdown values to match your PLG stages
  • Set up stage order (prevents regression)

Set "Subscriber" as your starting stage for all new contacts. Users who sign up for your product should immediately move to "Trial User."

Workflows for Automated Lifecycle Progression

Build workflows to move contacts through stages based on product signals:

Workflow 1: Subscriber → Trial User

  • Trigger: Contact created with product_signup_date is known
  • Action: Set lifecycle stage to "Trial User"

Workflow 2: Trial User → Activated User

  • Trigger: product_activation_date is known OR key_feature_used is true
  • Action: Set lifecycle stage to "Activated User"

Workflow 3: Activated User → PQL

  • Trigger: pql_score ≥ 70 (or your threshold)
  • Action: Set lifecycle stage to "Product Qualified Lead", create internal notification for sales, optionally create deal

Workflow 4: PQL → Opportunity

  • Trigger: Deal created and associated with contact
  • Action: Set lifecycle stage to "Opportunity"

Workflow 5: Opportunity → Customer

  • Trigger: Deal stage moves to "Closed Won"
  • Action: Set lifecycle stage to "Customer"

Handling Self-Serve Signups vs Sales-Assisted Deals

Many PLG companies have two paths:

  • Self-serve: User signs up, activates, upgrades to paid plan via product checkout (no sales involvement)
  • Sales-assisted: User signs up, hits PQL threshold, sales engages, closes deal

Handle both by adding a branch in your PQL → Opportunity workflow:

  • If current_plan changes from "Free" to "Pro" (self-serve upgrade), move directly to Customer lifecycle stage
  • If sales rep creates a deal, move to Opportunity stage

This prevents self-serve customers from getting stuck in "PQL" stage when they've already converted without sales involvement.

Step 3: Build PQL Scoring Based on Usage Signals

Traditional lead scoring uses demographic and engagement data (company size, job title, email opens, form submissions). Product-qualified lead scoring focuses on usage behavior.

What Makes a Product-Qualified Lead

A PQL is a free user showing strong buying signals based on how they use your product:

  • High engagement - Frequent sessions, returning multiple times per week
  • Feature adoption - Using core features or advanced capabilities
  • Team collaboration - Inviting colleagues, multiple users from the same company
  • Approaching limits - Close to free plan caps (usage limits, seat limits, storage limits)
  • Integration depth - Connecting external tools, configuring advanced settings
  • Good-fit signals - Company size, industry, use case aligns with ICP

The strongest PQLs show multiple signals simultaneously. Someone who logs in daily, has invited 5 teammates, connected 3 integrations, and is at 85% of their free tier limit is much more qualified than someone who just hits one threshold.

HubSpot Score Property Configuration

Create a custom number property called pql_score (0-100 scale). Then build a workflow that calculates the score based on product usage properties.

Workflow: Calculate PQL Score

Trigger: Contact property changes (any of your product usage properties)

Actions (conditional branches adding points):

  • If sessions_last_7d ≥ 3, add 15 points
  • If sessions_last_7d ≥ 7, add 25 points (replaces previous)
  • If features_adopted ≥ 3, add 10 points
  • If features_adopted ≥ 5, add 20 points (replaces previous)
  • If key_feature_used is true, add 15 points
  • If team_role is "Owner" or "Admin", add 10 points
  • If company property total_seats_occupied ≥ 3, add 15 points
  • If company property total_seats_occupied ≥ 10, add 25 points (replaces previous)
  • If company property plan_limit_usage_pct ≥ 60%, add 10 points
  • If company property plan_limit_usage_pct ≥ 80%, add 20 points (replaces previous)
  • If company property integrations_connected ≥ 1, add 5 points

Final action: Set pql_score to calculated total

This gives you a dynamic score that updates whenever product usage changes. Adjust point values based on which signals correlate with conversion in your data.

Usage Signals That Indicate Buying Intent

These product behaviors are the strongest conversion predictors across PLG companies:

Team growth: When a single user invites colleagues, it signals organizational adoption. Companies that go from 1 to 3+ users convert at 5-10x higher rates than solo users.

Usage frequency: Daily or near-daily usage indicates the product is becoming part of someone's workflow. Weekly users convert at 3-4x the rate of monthly users.

Power features: Using advanced features, API access, or admin controls indicates a sophisticated user who needs more than the free tier offers.

Limit proximity: Users at 70-90% of plan limits are actively feeling the constraint. They're primed for upgrade conversations.

Integration connections: Connecting external tools shows commitment and stickiness. Each integration increases switching costs.

Data volume: High usage (number of records, API calls, projects created) indicates meaningful adoption.

Track which of these signals exist in your product and weight them according to your historical conversion data. If you don't have conversion data yet, start with equal weighting and adjust after 30-60 days.

Setting Your PQL Threshold

Start with a threshold of 70/100. When pql_score reaches 70, trigger a sales alert and move the contact to PQL lifecycle stage.

Over time, analyze your conversion rates by score band:

  • 70-79: X% convert to paid
  • 80-89: Y% convert to paid
  • 90-100: Z% convert to paid

Adjust your threshold based on sales capacity. If your team is overwhelmed with PQLs, raise the threshold to 80. If they need more pipeline, lower it to 60.

Also segment by fit: a score of 75 from an enterprise account is more valuable than 85 from a small team. Add demographic scoring (company size, industry) to your calculation if you want a blended score, or keep them separate and use both in routing logic.

Step 4: Design Deal Pipelines for Freemium-to-Paid Motion

PLG companies need different deal pipelines than traditional SaaS sales. Create separate pipelines for each motion.

Three Pipeline Structure for PLG Companies

Pipeline 1: Self-Serve Conversion

Use this for users who upgrade via product checkout without sales involvement. Stages:

  1. Trial Started - Free trial activated
  2. Activated - Completed onboarding, using product
  3. Upgrade Intent - Viewed pricing page, started checkout flow
  4. Closed Won - Paid subscription active
  5. Closed Lost - Trial expired without conversion

This pipeline mostly tracks automated conversion funnels. You might not create deals manually - instead, use workflows to auto-create deals when someone starts a trial, then automatically move them through stages based on product events.

Pipeline 2: Expansion / Upgrade

Use this for existing customers upgrading plans, adding seats, or buying additional products. Stages:

  1. Expansion Qualified - Usage signals indicate upsell opportunity
  2. Outreach - CSM or AE contacted customer
  3. Proposal Sent - Quote or upgrade options shared
  4. Negotiation - Discussing terms, pricing, contracts
  5. Closed Won - Expansion revenue booked
  6. Closed Lost - Passed on expansion

This pipeline lets customer success and account managers track upgrade opportunities separately from new customer acquisition.

Pipeline 3: Enterprise Sales

Use this for larger accounts that require demos, custom contracts, or sales-assisted onboarding. Stages:

  1. PQL Identified - High-value free user showing buying intent
  2. Discovery Call Scheduled - Rep engaged, meeting booked
  3. Demo Completed - Product walkthrough done
  4. Trial / POC - Extended trial or proof-of-concept running
  5. Proposal Sent - Quote, MSA, security review
  6. Negotiation - Legal, procurement, final terms
  7. Closed Won - Contract signed
  8. Closed Lost - Disqualified or chose competitor

This is your traditional sales pipeline, but it starts with PQL instead of MQL.

Automating Deal Creation from Product Signals

Use workflows to automatically create deals when certain product events occur:

Workflow 1: Auto-create trial conversion deal

  • Trigger: current_plan changes to "Trial" OR product_signup_date is in last 1 day
  • Action: Create deal in "Self-Serve Conversion" pipeline, stage "Trial Started", associate with contact and company

Workflow 2: Auto-create expansion deal

  • Trigger: Contact is Customer lifecycle stage AND (plan_limit_usage_pct ≥ 80% OR total_seats_occupied ≥ 8)
  • Filters: No open deal in Expansion pipeline
  • Action: Create deal in "Expansion / Upgrade" pipeline, stage "Expansion Qualified", assign to account owner

Workflow 3: Auto-create enterprise sales deal

  • Trigger: pql_score ≥ 80 AND company property total_seats_occupied ≥ 10
  • Filters: Lifecycle stage is "PQL", no open deal exists
  • Action: Create deal in "Enterprise Sales" pipeline, stage "PQL Identified", assign to sales rep (round-robin or by territory)

Automated deal creation ensures no opportunities slip through the cracks when product signals fire.

Deal Stage Configuration and Win/Loss Reasons

For each pipeline, configure deal properties:

Deal amount calculation:

  • Self-serve: Auto-populate from plan price (e.g., Pro plan = $149/mo = $1,788 annual deal value)
  • Expansion: Difference between current MRR and projected MRR
  • Enterprise: Manual entry by sales rep

Deal close date:

  • Self-serve: Set to end of current trial period
  • Expansion: 30-60 days from creation (typical expansion cycle)
  • Enterprise: 60-90 days from creation (adjust based on your sales cycle)

Win/loss reasons: For Closed Won:

  • Self-serve upgrade (no sales touch)
  • Sales-assisted close
  • Expansion upsell
  • Annual prepay

For Closed Lost:

  • Price too high
  • Chose competitor
  • Not using product enough
  • Budget/timing
  • Poor product fit
  • Trial expired - no engagement

Tracking loss reasons helps you iterate on product experience, pricing, and sales approach.

Step 5: Essential Workflows and Automation for PLG

Beyond lifecycle and deal automation, these workflows are critical for PLG motion.

Critical Workflows Every PLG Company Needs

Workflow 1: PQL Alert to Sales

  • Trigger: pql_score reaches 70
  • Action: Send internal email to assigned sales rep with contact details, company info, usage summary (sessions, features adopted, team size), link to HubSpot contact record
  • Optional: Create task for rep to review account

Workflow 2: Activated User Nurture

  • Trigger: Lifecycle stage changes to "Activated User"
  • Action: Enroll in email nurture series highlighting advanced features, use cases, customer stories
  • Timing: Day 3, 7, 14, 21 after activation
  • Goal: Move users toward PQL threshold

Workflow 3: Trial Expiration Warning

  • Trigger: Contact has current_plan = "Trial" AND trial end date is in 3 days
  • Action: Send email with upgrade CTA, highlight usage stats ("You've created 47 workflows - upgrade to keep them"), offer discount or trial extension
  • Follow-up: If no upgrade, send one more email on expiration day

Workflow 4: Expansion Play - Seat Limit

  • Trigger: Company property total_seats_occupied ≥ 90% of plan limit
  • Action: Send email to account owner suggesting plan upgrade, create expansion deal, notify CSM

Workflow 5: Expansion Play - Usage Limit

  • Trigger: Company property plan_limit_usage_pct ≥ 85%
  • Action: Send email explaining overage policies, offer upgrade to higher tier, create expansion deal

Workflow 6: Churn Risk - Declining Usage

  • Trigger: Contact is Customer lifecycle stage AND sessions_last_30d decreased by 50%+ compared to previous 30 days
  • Action: Create task for CSM to check in, send re-engagement email, flag account for retention focus

Workflow 7: Engagement Recovery

  • Trigger: Contact hasn't logged in for 14 days AND lifecycle stage is "Activated User" or "PQL"
  • Action: Send email with tips to get more value, highlight features they haven't tried, offer 1:1 onboarding session

Product-Triggered Sales Alerts

The most valuable alerts for sales teams are:

  • PQL threshold hit - Score reaches qualification level
  • Team growth - Company goes from 1 to 3+ users (signal of org adoption)
  • Power feature usage - Contact uses API, custom integrations, or enterprise features on free plan
  • Limit approaching - Account at 80%+ of plan limits
  • Competitor signal - Contact viewed "vs [Competitor]" page or asked about migration

Format these alerts with context sales reps need:

  • Contact name, title, company
  • Current usage stats (sessions, features adopted, team size)
  • Specific trigger that fired the alert
  • Recommended action
  • Direct link to contact record in HubSpot

Example alert email:

Subject: PQL Alert - Sarah Johnson at Acme Corp

Sarah Johnson (Product Manager at Acme Corp) just hit PQL status.

Usage signals:
- 18 sessions in the past 7 days
- Invited 6 teammates (5 active users now)
- Connected 2 integrations
- At 78% of free tier data limit
- PQL score: 85/100

Recommended action: Reach out about upgrading to Pro plan before they hit data limit.

View contact: [link to HubSpot record]

Send these to the assigned rep's email or Slack channel via HubSpot workflows.

Automated Expansion and Upsell Plays

Most expansion revenue comes from three triggers:

  1. Team growth - As more users join, they need more seats or move from per-seat to flat-rate plans
  2. Usage growth - Account hits data limits, API rate limits, or storage caps
  3. Feature needs - Free user wants access to advanced features (SSO, custom roles, priority support)

Build workflows that detect these triggers and either auto-create expansion deals or alert the account owner.

For self-serve products, you can automate upgrade prompts directly in-product and via email. For sales-assisted expansions, create tasks for CSMs to proactively reach out before the customer gets blocked by a limit.

Time these conversations carefully. The best moment to discuss an upgrade is when someone is actively hitting a constraint (trying to invite user #11 on a 10-seat plan, about to exceed API quota). Surface these moments in your product UI and in HubSpot.

Step 6: Reporting and Dashboards for PLG Metrics

HubSpot's reporting tools let you combine product and CRM data into dashboards for different teams.

Essential PLG Reports to Build

Report 1: PLG Funnel Conversion

  • Type: Funnel report
  • Stages: Subscriber → Trial User → Activated User → PQL → Opportunity → Customer
  • Date range: Last 90 days
  • Shows: Drop-off rates at each stage, time in stage, total conversions

This is your primary health metric. Track conversion rates week over week.

Report 2: PQL-to-Customer Conversion Rate

  • Type: Custom report
  • Objects: Contacts
  • Filters: Lifecycle stage reached "PQL" in date range
  • Metrics: Count of contacts that reached "Customer" stage, time from PQL to Customer
  • Shows: What percentage of PQLs convert and how long it takes

Target: 20-40% PQL-to-customer conversion depending on PQL threshold tightness.

Report 3: Free-to-Paid Conversion by Cohort

  • Type: Custom report
  • Objects: Contacts
  • Grouping: product_signup_date by week
  • Metrics: Percentage that reached Customer stage, days to conversion
  • Shows: Weekly signup cohorts and their conversion performance

Look for trends - are newer cohorts converting faster or slower? Use this to measure impact of product or onboarding changes.

Report 4: Product Usage Distribution

  • Type: Custom report
  • Objects: Contacts
  • Filters: Lifecycle stage is "Activated User" or "PQL"
  • Grouping: Bucket by sessions_last_30d (0-5, 6-10, 11-20, 21+)
  • Metrics: Count of contacts in each bucket
  • Shows: How engaged your user base is

Healthy distribution has 40%+ in the 11+ sessions bucket.

Report 5: Expansion Pipeline by Trigger

  • Type: Deal report
  • Pipeline: Expansion / Upgrade
  • Grouping: Deal property "expansion trigger" (seat limit, usage limit, feature request)
  • Metrics: Count of deals, total value, win rate
  • Shows: Which expansion triggers generate the most revenue

Report 6: Time to Activation

  • Type: Custom report
  • Objects: Contacts
  • Filters: product_activation_date is known
  • Metrics: Days between product_signup_date and product_activation_date, median and P90
  • Shows: How quickly users reach activation milestone

Target: Median under 3 days, P90 under 7 days for most PLG products.

Creating Sales and RevOps Dashboards

Sales Dashboard (for AEs and CSMs)

Widgets:

  • My open deals by stage
  • My PQLs this week (contacts assigned to me with lifecycle stage "PQL")
  • Top accounts by usage score (companies ranked by account_health_score)
  • Expansion opportunities (companies at 80%+ plan limit usage)
  • Churn risk accounts (customers with declining session counts)

This gives reps a daily view of who to contact and why.

RevOps Dashboard (for operations and leadership)

Widgets:

  • PLG funnel conversion (Report 1 from above)
  • Weekly signups and activations
  • PQL volume by week
  • PQL-to-customer conversion rate trend
  • MRR from self-serve vs sales-assisted
  • Product usage distribution
  • Average deal size by pipeline
  • Sales cycle length by pipeline

Update this weekly in leadership meetings to track PLG motion health.

Product Usage Reports for Account Managers

For customer success teams managing existing accounts, create reports showing:

  • Accounts with declining usage (churn risk)
  • Accounts approaching plan limits (expansion opportunity)
  • Accounts with low feature adoption (onboarding issue)
  • Accounts with growing teams (seat expansion)
  • Accounts with single active user (adoption risk)

These become the input for CSM weekly account reviews and QBR prep.

Step 7: Common Mistakes to Avoid in HubSpot PLG Setup

Every PLG company makes similar mistakes when setting up HubSpot. Avoid these:

Mistake 1: Not syncing product data frequently enough

If your product data only syncs to HubSpot once per day or once per hour, sales alerts arrive too late. A user who hit your PQL threshold this morning shouldn't get a sales email tomorrow afternoon.

Use real-time or near-real-time sync (under 5 minutes). Zoody syncs in real time. Reverse ETL tools typically sync every 15-60 minutes, which is borderline acceptable. Nightly batch syncs are too slow for PLG.

Mistake 2: Creating too many custom properties without governance

It's tempting to create a HubSpot property for every product event and data field. This creates clutter and makes it hard to find what matters.

Set property naming conventions (product_* prefix for product data, account_* prefix for company metrics). Create properties for aggregated signals (session counts, feature adoption flags) rather than raw event logs. Archive unused properties regularly.

Mistake 3: Treating all signups as MQLs

Not every free signup is a marketing-qualified lead. Many are students, competitors doing research, or people kicking tires.

Reserve MQL designation for contacts that match your ICP criteria (company size, industry, job title) AND show engagement. Better yet, skip MQL entirely in a PLG motion and jump straight to PQL based on product usage.

Mistake 4: Not aligning sales and product teams on PQL definition

RevOps can build the perfect PQL scoring model, but if sales doesn't trust it or understand the signals, they won't act on PQL alerts.

Before launching PQL workflows, sit down with sales leadership and review:

  • What usage signals indicate buying intent
  • What score threshold means "ready for outreach"
  • What information reps need to personalize outreach
  • How reps should approach PQLs (consultative, not aggressive)

Get buy-in that these are real opportunities, not just "active free users."

Mistake 5: Over-automating outreach without considering user experience

Just because you can send an automated email when someone hits a usage threshold doesn't mean you should.

Users chose your product for self-serve convenience. Bombarding them with sales emails the moment they start using advanced features can feel pushy and hurt conversion.

Balance automation with user experience:

  • Use in-product upgrade prompts before email outreach
  • Delay sales contact until clear buying intent (approaching limits, team growth)
  • Let users opt into sales conversations rather than auto-enrolling them
  • Send helpful content first, sales pitch second

The best PLG motion feels like the product is helping you succeed, not trying to sell you. Keep that principle when designing automation.

How Zoody Simplifies HubSpot PLG Setup

Most of this guide describes workflows and configuration you build in HubSpot - but it all depends on step 1, getting product data synced. That's where Zoody comes in.

Why RevOps Teams Choose Zoody

Zoody was built specifically for RevOps managers running PLG companies on HubSpot. It solves the product data sync problem without requiring a data warehouse, reverse ETL pipeline, or engineering time.

Here's what that means in practice:

No warehouse required: Most reverse ETL solutions (Hightouch, Census) assume you have Snowflake or BigQuery already set up. Building a data warehouse for a startup costs $500-$2,000/mo and takes weeks of engineering work. Zoody skips that entirely - you send events directly from your product to Zoody, and Zoody syncs them to HubSpot.

Real-time sync: Zoody updates HubSpot contact and company records in real time (under 1 second latency). When a user invites their fifth teammate or hits 80% of plan limits, that data is in HubSpot immediately, not 15-60 minutes later like batch reverse ETL syncs.

Built for RevOps, not engineers: Zoody's UI is designed for non-technical HubSpot admins. You configure which events and properties to sync using dropdowns and toggles, not SQL queries. You can set up product data sync in 30 minutes without opening a ticket to engineering.

Pre-built PLG templates: Zoody includes templates for common PLG use cases - trial conversion scoring, expansion opportunity detection, churn risk flagging. Instead of building PQL scoring from scratch, start with a proven model and customize it.

Flat-rate pricing: $149/mo for unlimited product events, unlimited contacts, unlimited HubSpot users. No usage-based fees, no surprises. Compare to reverse ETL tools that charge per row synced or per warehouse query.

Only works with HubSpot: The tradeoff is Zoody is HubSpot-only. If you use multiple CRMs (Salesforce + HubSpot) or plan to migrate away from HubSpot, Zoody won't work. But for companies committed to HubSpot as their system of record, it's the fastest path to product-led revenue operations.

Getting Started with Zoody + HubSpot

Setup process:

  1. Install tracking: Add Zoody's JavaScript snippet to your product (similar to Google Analytics) or use the server-side API to send events from your backend. This tracks user actions like signups, feature usage, team invites.

  2. Connect HubSpot: OAuth connection takes 30 seconds. Zoody asks for permissions to read contacts/companies and write custom properties.

  3. Map events to properties: Choose which product events create or update HubSpot records. For example: "user_signed_up" → create contact, "feature_adopted" → update features_adopted property, "teammate_invited" → increment company total_seats_invited.

  4. Configure scoring: Set up PQL score calculation using Zoody's scoring builder. Assign point values to usage signals (sessions, features, team size) and define your PQL threshold.

  5. Build HubSpot workflows: Use the product properties Zoody creates to build lifecycle workflows, sales alerts, and automation (steps 2-7 in this guide).

Most teams are syncing product data to HubSpot within an hour of starting. From there, it's configuring the HubSpot-side workflows and dashboards described in this guide.

Zoody also surfaces product usage timelines inside HubSpot contact records, so sales reps can see a contact's recent activity (sessions, features used, teammates invited) without leaving HubSpot.

FAQ

Is HubSpot good for B2B SaaS companies with product-led growth?

Yes, HubSpot works well for PLG companies if you solve the product data sync challenge. HubSpot's strength is combining marketing, sales, and customer data in one platform, which is exactly what PLG companies need - visibility into both product usage and go-to-market activity. The weakness is that HubSpot doesn't track product usage natively, so you need to pipe that data in via Zoody, reverse ETL, or custom integration. Once product signals are in HubSpot, the platform's workflows, lifecycle stages, and reporting tools handle PLG motions effectively.

What HubSpot tier do I need for PLG company setup?

You need HubSpot Professional ($800/mo) or Enterprise ($3,600/mo). The Starter tier doesn't include custom properties, complex workflows, or API access - all required for PLG automation. Most early-stage PLG companies start with Professional, which includes 2,000 contacts, unlimited custom properties, workflows with branching logic, and custom reports. Upgrade to Enterprise when you need advanced features like calculated properties, predictive lead scoring, or custom objects for usage data modeling.

How do I get product usage data into HubSpot CRM?

Three methods: (1) Build a custom integration using HubSpot's Contacts API and Companies API to push product events from your backend - takes 2-4 weeks engineering time and ongoing maintenance. (2) Use reverse ETL (Hightouch, Census) to sync product data from your data warehouse to HubSpot - requires existing warehouse infrastructure, costs $350-$800/mo, sync lag of 15-60 minutes. (3) Use Zoody to send product events directly to HubSpot without a warehouse - real-time sync, no engineering work, $149/mo flat rate. Most RevOps teams choose option 3 for speed and simplicity.

What is a PQL (Product Qualified Lead) and how do I identify them in HubSpot?

A product-qualified lead is a free user showing strong buying intent based on product usage behavior, not demographic data. PQL signals include frequent usage (daily sessions), feature adoption (using core or advanced features), team collaboration (multiple users from same company), and approaching plan limits (near free tier caps). To identify PQLs in HubSpot, sync product usage data to custom properties, build a scoring workflow that adds points for each signal, and set a threshold (typically 70-80/100). When a contact reaches that score, move them to "PQL" lifecycle stage and alert sales.

What are the best HubSpot workflows for PLG companies?

The five critical workflows are: (1) PQL alert to sales when usage score hits threshold, (2) automated deal creation when product signals fire (trial start, expansion trigger, usage milestone), (3) lifecycle stage progression based on product activity (signup → activation → PQL → customer), (4) expansion plays triggered by team growth or limit proximity, and (5) churn risk detection when customer usage declines. Build these using HubSpot's workflow builder with triggers on your product data properties (sessions, features adopted, team size, plan limits). Each workflow should update contact records, create deals, send notifications, or enroll contacts in targeted campaigns.

Compare alternatives

Explore use cases

Try it on your own HubSpot

Zoody is in beta, so every feature is free right now. Connect your HubSpot, put real product signals on your records, and work directly with the founder.

More resources