Last week we announced the release of Inbound Webhooks, which includes full support for Reverse ETL tools like Census and Hightouch. Since then, I have worked with a number of companies on pushing new kinds of data into Variance. I thought it might be helpful to spell out a few interesting ways to use our new Inbound Webhook functionality.
Track Changes in Volume Metrics
One of the biggest reasons customers were requesting Reverse ETL support was that they wanted to add volume metrics to Variance. This is the kind of data that lives in your warehouse or database but doesn’t really translate as events. This could be the total amount of data ingested, messages sent, or even dollars spent. This data is really important but isn’t usually part of a tracking plan because the data isn’t usually generated directly by an individual.
The simple way to push this data into Variance with Inbound Webhooks is by syncing accounts and contacts, including any volume data you want. But where this gets extra powerful is when it’s combined with our change event functionality. This allows you to mark any property as something you want to track, and we will then generate change events each time it’s updated. What’s cool about these events is that they include not just the old value and the new one, but also the amount and percentage increase if they’re number fields.
Sync Data from Google Sheets to Variance
One cool and simple use case for this new functionality is to sync arbitrary data from Google Sheets into Variance. Because both Census and Hightouch support sheets as a data source, it’s easy to add any data to a sheet and then pipe it in through Inbound Webhooks. Here’s how you do that:
- Make your sheet: ensure that you include some kind of ID field, whether it’s an account or user ID, domain, email, or something else you can use to match the account or contact with their representation in Variance.
- Connect your sheet to Reverse ETL
- Add a Model for your sheet in Reverse ETL: this will align with your column names, so make sure your first row has those. Also, if you update your sheet with new columns, make sure you update your model.
- Create a new sync to Variance: here’s how with Hightouch and Census
Convert Database Rows to Events
Inbound Webhooks works just like the rest of the system, which means it’s built to support accounts, contacts, and events. But most databases don’t have events, they have rows. Each time someone creates something new in your system, you will generally have a corresponding database row that is added, which saves the thing they just did. A lot of BI and even Reverse ETL is about aggregating all those rows to tell the team this account did this thing 100 times.
But there are some data, especially the core functionality of your app, that the revenue team may want to know more than just the raw volume. This is where thinking about converting those rows to events is really powerful. It’s a new idea, though, so let’s talk about what it really means.
Let’s use Project Management as an example since we’re all familiar with those types of tools. In them, you have a table for projects, one for tasks, and one for users. This is obviously a toy example, but it should help paint a picture. If you already use a CDP, you are probably tracking the creation of each of these as events, in which case we don’t need to worry about anything, but lots of folks rely on just their warehouse/db for this kind of info. If we wanted to generate an event for each time a project was created, we would just create a model in our Reverse ETL tool that selected all rows with just the info that isn’t updated (id, create date, user ID, etc.). As part of the SQL query, you can also give your event a name with something like `SELECT ‘Project Created’ as TYPE` and sync that with a Variance Inbound Webhook.
Send Stripe, Airtable, Mailchimp, and Others Using Zapier Transfer
Zapier now has a tool for doing ETL-like stuff called Transfer. It allows you to move lots of data out of a host of systems into another Zapier-connected system on a one-time basis. While it’s a great step for Zapier, the functionality is pretty limited, and you can only send data to a destination using a single-step Zap. If you’ve ever used Zapier, you will know that single-step Zaps are basically impossible outside the simplest situations.
Inbound Webhooks solves this problem nicely. Instead of worrying about needing to do a multi-step Zap to Variance, you can just send your data via Webhook (with auth header on or off) and map that data as needed. Just like sending us event data, we will be able to generate accounts off the data you send us and lots of other cool tricks.
There are lots of other ways you can use Inbound Webhooks. If you want to learn more or have any questions, please be in touch.