Squid began as one platform for teams who wanted to know who was on their website. What customers did with it underneath told us what to build next.
Squid was founded by three people who kept running into the same wall: website tools were either too basic to be useful or so complicated you needed an analyst to run them. And the ones in the middle made you wait a day to find out whether yesterday's landing page worked.
So we built the thing we wanted. Web analytics, behavioral heat maps, engagement tracking, and person-level identification in one place, in real time, without a tagging plan or a data science hire.
Getting there meant solving infrastructure problems that had nothing to do with dashboards. We needed a persistent connection to the browser instead of HTTP polling. A message bus that could carry millions of events without dropping any. Identity resolution that returned in hundreds of milliseconds, not minutes. Frontend and backend in sync without asking a customer to run WebSocket servers.
So we built that too. Socket.io for persistent browser connections, Apache Pulsar for distributed messaging, independent microservices, and one script tag hiding all of it.
We built serious infrastructure and packaged it as a simple product.
Once teams started using it, they didn't all use it the same way, and the differences weren't small.
Agencies weren't managing a website. They were managing twenty, for clients who wanted a report with the agency's logo on it, not ours. Sales teams didn't want a dashboard at all: they wanted the names, in Slack, and they resented paying a monthly platform fee for a bucket of matches they wouldn't finish. And a third group, our most engaged customers, weren't opening the dashboard at all. They were hooking into the plumbing, embedding our SDK in their own products and building on the live stream underneath.
One product meant all three groups had to compromise. So we stopped asking them to.
The same infrastructure underneath. What changes is how much of it you touch, and how you pay for it.
An agency's problem isn't seeing one site clearly. It's seeing twenty without losing the afternoon, proving impact to a client who doesn't read dashboards, and doing it under their own brand. So Agency is one account for every client site, credits pooled across all of them, per-site limits so one client can't spend another's budget, and white-labeled reports that land Monday morning with your logo on them. Adding a client should never mean adding a fee.
A sales team asking "who was on our pricing page?" doesn't need heat maps, and shouldn't have to buy them. They also shouldn't buy 600 matches to use 400. So Squid-ID does one job: identify the people on your site and route them where you work, billed per match with no monthly fee. Prepaid credits, cheaper per match as volume grows, and a B2B-only switch so you never pay for consumer traffic you didn't want. When one job stops being enough, Squid Agency is right there.
Our most technical customers weren't buying identification. They were subscribing to a live stream and building on it: greeting visitors by name in a chatbot before the first message, merging their CRM with our resolution in about 340ms, feeding predicted intent into their own AI agents. Other vendors identify a visitor and hand back a JSON blob. Our customers wanted the pipe. So we exposed it: the WebSocket layer, the message bus, the behavior and intent engine, and optional identity, as one SDK.
Every session opens a bidirectional socket. Behavior goes up, identity and enrichment come down. No polling, no round-trips, sub-50ms delivery on an open connection.
Every event flows through the same distributed messaging system Yahoo and Verizon use for high-throughput work. Guaranteed delivery and horizontal scale, which is why millions of concurrent visitors don't degrade it.
The connection layer, identification, and enrichment scale separately and never block each other. A traffic spike on one doesn't slow the others down.
We query all five identity sources per visitor, de-dupe, and serve a record only when two or more corroborate it. Weak data gets suppressed rather than shipped, even when we technically had a match.
Resolution happens in layers: company in the first 100ms, person by 300ms, full enrichment shortly after. Each layer arrives as it's ready instead of all-or-nothing.
Reconnection, offline queueing, state across page loads, and event routing are all handled for you. You add one snippet, and on Agency and Developer you configure exactly what it captures.
A report about yesterday can't win you a deal today. If a visitor is on the pricing page right now, you should know right now.
Bots, consumer traffic when you asked for B2B only, matches that fail verification, repeat visits inside a month: none of it should reach your invoice.
A suppressed record is better than a wrong name in front of a rep. If our sources can't agree on who someone is, we say nothing.
The snippet is configurable, not a fixed pixel. You decide what turns on, what gets captured, and what leaves the page. Identity is opt-in and consent-aware by default.
No tagging plan, no dimensions to untangle, no analyst required. If you can read a sentence you can read our dashboard.
Identification, behavior, analytics, and delivery used to mean four contracts and four bills. It's one integration here.
Squid was founded by Jason, Narciso, and Norman, and it is still a small team that ships quickly and talks to customers constantly. Most of what is in these three products came from watching what people actually did with the last version.
If you are weighing which Squid fits, or you want something we haven't built yet, write to us. That is genuinely how the roadmap gets set.
— Jason, Narciso & Norman
Working the architecture out on the glass, which is still how most of this gets decided.
Three quick questions and we'll point you at the right Squid.
Pick where your account lives. We'll take you straight there next time.
New to Squid? See which one fits