Own the Pipe: Replacing an $800 CRM Relay for PLG
TL;DR: We removed a paid relay tool from our PLG stack and rebuilt the pipe on our own infrastructure. Auth → n8n → HubSpot. Real time, secure, cheaper. Enrichment now runs in HubSpot Breeze AI.
Why this matters for PLG
PLG lives on clean, timely product signals. If activation and usage reach your CRM late or out of order, sales, success, and marketing lose the thread. Third parties can add cost and extra hops. Owning the pipe gives you control, speed, and fewer failure points.
What changed
Removed the Clay connection
Disabled Clay enrichment and old webhook endpoints
Built two n8n workflows on client side infrastructure
Moved enrichment to HubSpot Breeze AI
Result: the monthly relay fee is gone. The path is shorter. The data is where GTM teams work.
The architecture
Auth Platform → n8n → HubSpot
n8n receives events from the auth platform
HubSpot remains the system of record for contacts and GTM workflows
Breeze AI handles enrichment under a tighter credit plan
How it runs
Workflow 1: Signup to Contact
When a signup event arrives, n8n checks HubSpot for an existing contact. If none exists, it creates one and sets the initial last_login. If it exists, no duplicate is created.
Workflow 2: Session to Last Login
When a session event arrives, n8n updates the contact’s last_login in HubSpot. That field feeds an internal workflow that counts login frequency.
Both workflows are stateless and idempotent. If an event retries, the outcome stays the same.
Benefits
Real time contact creation and updates
Fewer hops which means fewer failure points
Lower cost by removing a monthly relay fee
Cleaner signals so GTM teams see the truth in HubSpot
Foundation for product telemetry that supports PLG
Results after cutover
Live in production with parity to the old setup
Enrichment running in Breeze AI with credits under review for further savings
Clear ownership of the path from product to CRM
What this unlocks for GTM
With reliable signup and last_login in HubSpot, you can plug in:
Activation rate by segment and plan
Weekly active users and login streaks by account
Time to first value mapped to outreach
Usage-based lead scoring that ranks who to call
Renewal risk signals when usage drops
Lifecycle automation tied to real behavior
Build notes that helped
Idempotency by key fields. Email and external IDs prevent duplicates.
Tight field mapping. Keep the schema small. Add fields only when they drive action.
Event parity tests. Mirror a slice of traffic to confirm counts, order, and timing.
Backfill plan. Migrate recent signups and sessions so day one feels complete.
Rate limit awareness. Space writes where needed and batch when safe.
Cost lens
If you pay around $800 a month for a CRM relay, you may be funding extra hops that your team does not need. In our case, the relay went away, and enrichment credits are under control inside HubSpot. Your stack may differ, so review volumes, throughput needs, and team ownership before you move.
A quick self-audit for PLG teams
Do product signals land in your CRM in near real time?
Are you paying a monthly fee to pass data you already own?
Can your team ship changes without waiting on a vendor?
Are duplicates and lag still a weekly topic in standups?
Does your enrichment plan match your actual growth motion?
If those points feel familiar, owning the pipe can pay off.
Closing
PLG grows when signals are clean and fast. Auth to n8n to HubSpot gives control, speed, and a smaller bill. Breeze AI covers enrichment without bloat. The relay is gone, the data flows, and the team works from a single source of truth.