DataOps in Action - Easy Product to CRM Integration

DataOps
December 29, 2022

Product data has always been an elusive goal for RevOps teams. The simple truth is it doesn't need to be. Challenges surfacing and operationalizing product data can be attributed almost entirely to outdated organizational models.

As you likely know, Modern Ops employs a DataOps model for Revenue Operations: Data-RevOps. In that model, a data warehouse sits at the center of all operational processes. That warehouse, and related tooling, then directs traffic throughout the system architecture. We can manage and automate the full spectrum of RevOps tasks in a fraction of the time and cost (often 70-90% cost savings).

The Modern Ops vision is: 1 team, 1 tech stack.

A modern data stack positions a data warehouse, and related tools, at the center of all data flows.

Real-World Example

We recently deployed a product data pipeline for a client that automatically creates contact records in their CRM for every new app user. In a traditional org structure, with distinct engineering, data, and sales ops teams, this infrastructure could easily take weeks to build, at a cost of hundreds or thousands of labor hours. In other words, RevOps can now be orchestrated at >90% cost savings in many instances.

This was an especially simple setup because Firestore has a native integration with BigQuery owing to them both being part of Google Cloud Platform.

App user data refreshes in CRM every hour

Here's how we did it:

  1. Firestore to BigQuery stream. For whatever reason, Google makes this Firebase extension extremely difficult to find. but it's an indispensable tool. It's important to note that this extension only streams changed records to your Firestore collection - ie. no historical data. To trigger a full initial sync, we added a blank column to the Firestore collection, and then deleted the extra column.
  2. Transform with dbt. Firestore data lands in BigQuery in JSON (unstructured) format, but we need it in a SQL (structured) format. dbt to the rescue! This is the only code we employed in our data pipeline, and it's only ~15 lines of SQL. With dbt, we create a SQL view in BigQuery that exists as a permanent, and live, SQL transformation of the JSON data.
  3. BigQuery to Hubspot with Hightouch. I hate the term "Reverse ETL" but that's what the industry calls tools that push data from a data warehouse to your business systems. Hightouch and/or Census are must-have tools in the modern data stack. These tools will completely eliminate the need for data engineers in many businesses.

That's it! We were able to put app users into a marketing campaign the same day.

User KPIs such as monthly active users, last login, subscription status, etc can be similarly pushed to the CRM for use by the business.

Therein lies the beauty of DataOps: we can recycle the same data models for infinite use cases, ensuring every report, system, and KPI points to the same source! The "old" way required extensive internal coordination and engineering resources to build a web of ad-hoc integrations that nobody was assigned to maintain.

And just to prove a point, I used those same dbt and Hightouch models to replicate the user data in three different CRMs with no modification whatsoever. I stood up the same dataset in Pipedrive, Hubspot, and Airtable in a matter of minutes.

Try doing that with legacy RevOps!

Search Pivot