In the last post, I wrote about Mailchimp, an email marketing platform built for small businesses with an emphasis on simplicity and ease of use. I got some questions on how Mailchimp supports so many integrations, so I thought that I would write about another important part of the stack - an integration platform that helps capture a lot of this data.
Honestly, Customer Data Platform ("CDP") is a very fuzzy term that can mean a lot of different things and is heavily misused by vendors. I see Segment really as a "glue" that connects customer data to various tools, as well as custom data warehouses, so you can power a lot of the magic that happens in modern customer engagement systems.
The Core Technology - analytics.js
At its core, Segment provides a Javascript (JS) library that you drop into the browser and a set of APIs that help you identify users, track activities like opens, clicks, and purchases and transfer this data into various other tools, or your custom data warehouse. In that respect, it's much like the Facebook Pixel or the Google Tag Manager.
Segment has standardized the API for customer data on the browser, and so you send events to segment and segment multiplexes these events to all the other tools.
It has a rich library of third-party integrations - and you can plug and play tools of your choice without having to spend additional developer time to do integrations. Unlike Tag manager which only helps manage the "loading" of libraries, Segment also provides a common event API and abstraction
The JS script is quite a piece of engineering - for most tools, the integration and API translation are done in the front-end. For instance, if you choose to integrate with Facebook Pixel through Segment, Segment would load the FB Pixel code, and send the data to pixel in the browser itself, so that it benefits from any user identification and works exactly as if you had loaded the Pixel JS natively. TBH, I was impressed when I learned about this!
Over time, Segment has added a bunch of other capabilities around this "glue", custom data warehouses that you can connect (e.g., redshift, big query, or snowflake) or compliance with GDPR, etc. Most of this is based on stream processing - tagging PII data in real-time and rules around its handling, building personas, etc. Segment, though, is not the tool where you collect and analyze the data -- you'd typically use one of the CRM/Analytics integrations (like Amplitude, Heap, Mixpanel, etc.)
From a customer review on G2.com:
What do you like best?
Segment has been fantastic for us to add new destinations for our data, we can trial out different analysis tools, and pick best of breed without having to integrate to each one. It has also freed up development resources because business analysts and other users can set up new destinations without being reliant on the development team.Review collected by and hosted on G2.com.
What do you dislike?
The downside of the above is that the development team can lose site of where data is going and how it is being used. Great for business analysis, not so great for data management. I'm very happy Segment has introduced the privacy portal to help manage that data, where it is flowing and how it is used.
Middleware or Marketing Disruptor?
You can think of Segment as akin to a MuleSoft or ESB for marketing data. It's really powerful for a few reasons:
It lets you choose and try out various marketing tools without having to waste developer time (and cost!) esp for marketing teams that want to be agile. If a tool becomes too expensive, yank it out and replace it with a cheaper alternative. If you need a new use case, try it out easily.
In doing so, it shifted the balance of power from tool to customer. In the early days of marketing automation, companies like Eloqua (acq. by Oracle), Demandware (acq. by Salesforce), Unica (acq. by IBM and later sold to a PE firm) ruled the market, locking in customers for decades. With Segment, if you don't like WebEngage, you can switch to BlueShift in under five mins.
This has made it easier to launch a new marketing automation company (since you can dramatically cut down the time and cost of integration). At the same time, however, it creates immense pricing pressure and valuation multiples have suffered (my read, not vetted)
Much like many of the tools it integrates with, Segment sells using a freemium model with 10K users for free and a plan based on MTUs (some form of "monthly active users"). When you bolt-on compliance products (like SOC2, SAML Authentication), it adds up!
Interestingly enough, Segment also ends up disrupting itself given direct vendor integrations are possible. If you are a large company, and your marketing tooling is reasonably stable/mature, there's little reason to use segment. You can integrate directly with the vendors and save some $$s. I sense that this is one of the reasons they have been adding compliance use cases (for lock-in), and also why they sold themselves to Twilio for $3.2B since they had a "graduation" problem - their biggest customers could easily graduate out and they had a harder time growing average contract value.
Segment is highly developer-centric, and perhaps that's why they felt Twilio was a good fit, in being one of the most successful developer-centric companies. Unlike Twilio, where developers do not want to deal with the messiness of the real-world (phone calls, PSTN, SMS), developers were happy to integrate the marketing tools directly.
The Origin Story
If you have read this far, you probably know that I'm always fascinated by Origin stories. This post from Segment captures it well: the founders got into YC with an Edtech startup, nothing worked, 6 pivots later, they had pretty much given up. They decided to throw out their open-source JS library for sending customer data to disparate data sources on HackerNews, and viola, the signups started rolling in.
Another very interesting case study I recall about Segment is their tryst with trying to reduce their AWS Bills -- the bane of most startups :) They even open-sourced their script to dump AWS detailed bills into redshift for a deeper analysis.