{"componentChunkName":"component---src-templates-post-js","path":"/blog/headless-identity-resolution/","result":{"data":{"doc":{"_type":"post","id":"-f950abd3-e1e5-5c7a-94f2-00ae6d1796c0","_id":"983bedfa-3290-4d54-a6c5-f88862d141af","publishedAt":"2026-07-24T17:38:00.000Z","_createdAt":"2026-07-24T17:09:29Z","_updatedAt":"2026-07-24T17:49:59Z","readingTimeInMinutes":7,"categories":[{"_id":"24ca40fc-7961-4bb6-9045-e13e6900f746","_type":"category","title":"Enterprise (PERSONA)","titlePublic":"Enterprise","slug":{"current":"enterprise"},"status":"review","mainImage":null}],"mainImage":{"crop":null,"hotspot":null,"asset":{"_id":"image-1fc4c5ba59a27cecc4ecce03963552d9fa352bc2-1200x630-jpg","altText":null,"extension":"jpg","metadata":{"hasAlpha":false,"dimensions":{"height":630,"width":1200,"aspectRatio":1.9047619047619047}}},"layout":null,"alt":null},"cardImage":null,"mainVideo":null,"mainAudio":null,"duration":null,"title":"Buyer Intelligence Went Headless. Here's Why It Didn't Fall Apart.","slug":{"current":"headless-identity-resolution"},"isFeatured":null,"status":"published","hideMainMedia":null,"_rawExcerpt":[{"_type":"block","style":"normal","_key":"f0e84f36f145","markDefs":[],"children":[{"_type":"span","marks":[],"text":"Every headless GTM demo assumes the data the agent is working with is already correct. Nobody's shown what happens when it isn't. Here's what actually has to be true before you can trust an agent to act on your data without babysitting it.","_key":"e78c93747d26"}]}],"_rawBody":[{"markDefs":[],"children":[{"_type":"span","marks":[],"text":"Something changed in GTM tooling this year. Coding agents can now build entire workflows from a terminal, no UI required. Ask one to find a list of accounts, enrich them, and push them into a sequence, and it just does it. Type a sentence, watch a workflow appear.","_key":"8573b04fa653"}],"_type":"block","style":"normal","_key":"c32f5cfbec80"},{"style":"normal","_key":"5b0023268038","markDefs":[],"children":[{"text":"I've been building in this world for almost a decade now, and I'll say it plainly: this is a real shift, not a demo trick. The terminal is genuinely becoming a place where GTM work happens.","_key":"b630507755a2","_type":"span","marks":[]}],"_type":"block"},{"_type":"block","style":"normal","_key":"d056c235193e","markDefs":[],"children":[{"_type":"span","marks":[],"text":"But every one of these demos, everywhere I've seen them, quietly assumes the same thing. They assume the data the agent is working with is already correct.","_key":"28b3993119f0"}]},{"style":"normal","_key":"2e10504f77cd","markDefs":[],"children":[{"marks":[],"text":"Nobody's shown what happens when it isn't.","_key":"540574bfab54","_type":"span"}],"_type":"block"},{"_type":"externalVideo","_key":"bd04d5908ebf","file":{"_type":"file","asset":{"_id":"file-1c2b9b4adedde5d42b59dd074b6775582c432654-webm","_type":"sanity.fileAsset","_rev":"uiE5F13cTFeV0ltho7lk8B","_createdAt":"2026-05-27T23:43:58Z","_updatedAt":"2026-07-10T18:09:33Z","creditLine":null,"url":"https://cdn.sanity.io/files/vt347z5x/production/1c2b9b4adedde5d42b59dd074b6775582c432654.webm","opt":{"media":{"tags":null}},"originalFilename":"Common-Room-CLI-Terminal-Reveal.webm","sha1hash":"1c2b9b4adedde5d42b59dd074b6775582c432654","extension":"webm","description":null,"altText":null,"path":"files/vt347z5x/production/1c2b9b4adedde5d42b59dd074b6775582c432654.webm","size":693689,"title":null,"assetId":"1c2b9b4adedde5d42b59dd074b6775582c432654","uploadId":"sgFR3qBgnSHhhrZev0Dar24zUSXqH3d0","mimeType":"video/webm","filename":"Common-Room-CLI-Terminal-Reveal.webm","placeholderUrl":null,"id":"file-1c2b9b4adedde5d42b59dd074b6775582c432654-webm","children":[],"parent":null}}},{"children":[{"text":"The assumption nobody's testing","_key":"3684fda96d20","_type":"span","marks":["strong"]}],"_type":"block","style":"h2","_key":"436bcf9d9fe6","markDefs":[]},{"markDefs":[],"children":[{"_type":"span","marks":[],"text":"Here's the thing about handing an agent a data source and letting it run: it's only as good as what's underneath it. If an agent enriches a contact and gets a job title slightly wrong, you get a bad cell in a spreadsheet. Annoying, but recoverable. Someone notices, someone fixes it.","_key":"704a2078f55e"}],"_type":"block","style":"normal","_key":"0f63de37f7d6"},{"children":[{"_type":"span","marks":[],"text":"Identity is a different animal.","_key":"cb07118c4476"}],"_type":"block","style":"normal","_key":"12d146d42eed","markDefs":[]},{"style":"normal","_key":"2f989d2951f4","markDefs":[],"children":[{"_key":"96ebfbf8e06e","_type":"span","marks":[],"text":"Imagine if an agent decides two records are the same person when they aren't, or decides they're different people when they're actually the same one, you don't get a bad cell. You get a duplicate account. You get pipeline counted twice. You get an AE calling a contact that another rep already has a live relationship with, because the agent didn't know that. And it doesn't happen once. It happens at whatever speed the agent is moving, which today means fast, and tomorrow means faster."}],"_type":"block"},{"style":"normal","_key":"dd33c6dd56f4","markDefs":[],"children":[{"marks":[],"text":"This is the part of \"AI agents plus GTM data\" that everyone's racing past. Reach is the easy problem. Getting an agent access to data, wiring it up to a terminal, that part's been solved. Trust is the hard problem, and it's the one that actually decides whether any of this works once you stop babysitting it.","_key":"ec48371ad5c5","_type":"span"}],"_type":"block"},{"_type":"block","style":"normal","_key":"b24559bb9c56","markDefs":[],"children":[{"text":"So before I trusted an agent to act on our own data, I wanted to see what it was actually standing on.","_key":"cd344e0c6533","_type":"span","marks":[]}]},{"markDefs":[],"children":[{"text":"Asking the CLI what it actually has","_key":"27c89f73d908","_type":"span","marks":["strong"]}],"_type":"block","style":"h2","_key":"9e92f9e71d8a"},{"style":"normal","_key":"6b3a9cec0931","markDefs":[],"children":[{"_key":"5646fb2bbc51","_type":"span","marks":[],"text":"No UI. Just our CLI, cr, and a question: what's actually in here?"}],"_type":"block"},{"_key":"e6f08c6fae7a","markDefs":[],"children":[{"text":"Also worth saying plainly before I go further: cr isn't a separate, bespoke tool with its own rules. It's a thin layer over the same API that powers everything else in Common Room. Which means whatever I found by typing commands into a terminal is the exact same access available to any code an agent writes on its own, a script, a scheduled job, a custom integration, in any environment, not just an interactive session I'm sitting in front of.","_key":"7dda0be968dc","_type":"span","marks":[]}],"_type":"block","style":"normal"},{"_key":"cbeb5ced9528","markDefs":[],"children":[{"text":"Which raises the obvious next question: if that's all it is, why not just call the API directly? For some deployments, tightly constrained environments, custom auth setups, that's exactly the right call, and the API is there for it. But we built the CLI specifically to make an agent's job easier day to day. Auth is one command instead of wiring up a token flow by hand. And instead of an agent guessing at what's available, it can just ask.","_key":"f5f09a4a595f","_type":"span","marks":[]}],"_type":"block","style":"normal"},{"markDefs":[],"children":[{"text":"In practice, people are already pointing agents at cr for the ordinary stuff: prospecting a target list, pulling account research together before a call, drafting outreach off real signals instead of a guess. You don't have to teach an agent the whole surface by hand, either. Run cr agent-context and it gets a full, machine-readable map of every command, flag, and filter back, so it can figure out the rest on its own.","_key":"b2ac26d3c292","_type":"span","marks":[]}],"_type":"block","style":"normal","_key":"f8eced70a95e"},{"_type":"mainImage","_key":"ff2bcd9639e5","asset":{"_id":"image-24f58b4a68426f2cd5c208f4f18be6b2aa06af0a-1280x672-jpg","_type":"sanity.imageAsset","_rev":"I6DFcTJpaKFnGpRNPLrBQG","_createdAt":"2026-07-24T17:39:03Z","_updatedAt":"2026-07-24T17:39:03Z","path":"images/vt347z5x/production/24f58b4a68426f2cd5c208f4f18be6b2aa06af0a-1280x672.jpg","extension":"jpg","metadata":{"blurHash":"MiGv03j[_3of_3t7j[j[fQj[_Nj[Rjj[V@","_type":"sanity.imageMetadata","thumbHash":"2/cRBILX2LeId3ePd3iXh4B5CA==","palette":{"dominant":{"_type":"sanity.imagePaletteSwatch","foreground":"#000","title":"#000","population":1.98,"background":"#c1e6da"},"_type":"sanity.imagePalette","darkMuted":{"background":"#374c46","_type":"sanity.imagePaletteSwatch","foreground":"#fff","title":"#fff","population":0.1},"muted":{"title":"#fff","population":0.07,"background":"#6f9c8c","_type":"sanity.imagePaletteSwatch","foreground":"#fff"},"lightVibrant":{"_type":"sanity.imagePaletteSwatch","foreground":"#000","title":"#000","population":1.98,"background":"#c1e6da"},"darkVibrant":{"foreground":"#fff","title":"#fff","population":0.31,"background":"#092e23","_type":"sanity.imagePaletteSwatch"},"lightMuted":{"_type":"sanity.imagePaletteSwatch","foreground":"#000","title":"#000","population":0.54,"background":"#b1d5c9"},"vibrant":{"background":"#29d5a2","_type":"sanity.imagePaletteSwatch","foreground":"#000","title":"#fff","population":0}},"hasAlpha":false,"lqip":"data:image/jpeg;base64,/9j/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAALABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAUGBAj/xAAjEAAABgICAQUAAAAAAAAAAAABAgMEBQYAEQcSEyFhcpHR/8QAFgEBAQEAAAAAAAAAAAAAAAAAAAID/8QAGBEBAQADAAAAAAAAAAAAAAAAAAECESH/2gAMAwEAAhEDEQA/AEfJt3sbO9S7VtLuU0E1xAhCm9Chk4N9tBgKIzjzfzzo210uuu5lw5cxSCi6h+xzjvYj94uc0KrlFMAhm4b9zfuGdyk3xr4Tm5KToyTiQeKuF/Ocvc47HQawy4p8JGxcKRuwaJoIAYTdC71scMLf/9k=","dimensions":{"_type":"sanity.imageDimensions","width":1280,"aspectRatio":1.9047619047619047,"height":672},"isOpaque":true},"url":"https://cdn.sanity.io/images/vt347z5x/production/24f58b4a68426f2cd5c208f4f18be6b2aa06af0a-1280x672.jpg","size":217422,"assetId":"24f58b4a68426f2cd5c208f4f18be6b2aa06af0a","originalFilename":"Buyer Intelligence Went Headless - image.jpg","uploadId":"74225c91bb036d5aa9353f901ae17e90fe0afd71","sha1hash":"24f58b4a68426f2cd5c208f4f18be6b2aa06af0a","mimeType":"image/jpeg","filename":"Buyer Intelligence Went Headless - image.jpg","width":1280,"height":672,"placeholderUrl":"https://cdn.sanity.io/images/vt347z5x/production/24f58b4a68426f2cd5c208f4f18be6b2aa06af0a-1280x672.jpg?rect=416,0,448,672&w=%width%&h=%height%&q=80","id":"image-24f58b4a68426f2cd5c208f4f18be6b2aa06af0a-1280x672-jpg","children":[],"parent":null}},{"markDefs":[],"children":[{"marks":[],"text":"I stopped on one line longer than the rest. Account and Organization aren't the same object. Organization is the broader record, every company Common Room tracks, whether or not it's a customer yet. Account is the CRM-facing view, and for any room with Salesforce connected, it's now built automatically, synced and kept in step with Organization through Smart Account Linking, no manual mapping required. The catalog tells an agent which one to reach for depending on what's actually being asked. That's not a footnote. That's the difference between an agent that knows exactly what kind of record it's touching, and one that's guessing.","_key":"cde8dc63428f","_type":"span"}],"_type":"block","style":"normal","_key":"02fa50738d2b"},{"style":"normal","_key":"7a063cf4b55a","markDefs":[],"children":[{"_key":"0924473c2f12","_type":"span","marks":[],"text":"I hadn't asked the CLI to do anything yet. I'd just asked it what it knew. And it already knew more precisely than most people at most companies could tell you about their own CRM."}],"_type":"block"},{"_type":"block","style":"h2","_key":"833df8d193b2","markDefs":[],"children":[{"text":"What happens when you actually write something","_key":"24da622f9fbc","_type":"span","marks":["strong"]}]},{"children":[{"_key":"4478c280dda4","_type":"span","marks":[],"text":"Here's where it gets interesting. Say someone signs up for a free trial off a personal Gmail address. No title, no company, nothing that screams \"this matters.\" The obvious move is to treat that as a brand-new, unqualified lead. Except it isn't always. Person360 might already know that email belongs to the same person who was the economic buyer on a deal that stalled eight months ago, tracked back then under a work address and a LinkedIn profile, not a Gmail account."}],"_type":"block","style":"normal","_key":"628fbf9a577c","markDefs":[]},{"_type":"block","style":"normal","_key":"17bceb2d1f2f","markDefs":[],"children":[{"text":"Create or update that contact through the CLI, and the write goes through. What happens next is the part that matters: the same merge model that resolves identity across every other path into Common Room, the UI, the API, our MCP server, runs against it too. It doesn't matter which door the data walked through, or how unrecognizable it looked walking in. Person360 and Org360, the identity resolution layer underneath all of this, catches the match regardless. The CLI didn't add the capability. It just stopped hiding it behind a UI.","_key":"72aa333b5a8a","_type":"span","marks":[]}]},{"markDefs":[{"_type":"link","href":"https://www.commonroom.io/customers/incident-io/","_key":"4e477d33719d"}],"children":[{"_type":"span","marks":[],"text":"DataAgent exists for the same reason, running constantly in the background, catching the duplicates and stale records that slip through anyway, because nothing is ever perfect at scale. One of our customers, ","_key":"05787b1a6c13"},{"_type":"span","marks":["4e477d33719d"],"text":"Incident.io, ran this against their Salesforce data and watched their duplicate account rate drop from 3% to 0.3%, a 70% reduction","_key":"ee6eb566dfb5"},{"_type":"span","marks":[],"text":", on data that had been accumulating for years before DataAgent ever touched it.","_key":"a34bdfde9328"}],"_type":"block","style":"normal","_key":"df214b1bd09a"},{"style":"normal","_key":"4ae5e53b62b0","markDefs":[],"children":[{"marks":[],"text":"That's the actual point of this whole post. Identity resolution isn't a supporting feature you mention on slide four of a deck. It's the precondition for everything above being usable at all. Skip it, and headless execution is just faster access to the same fragmentation everyone already has.","_key":"b19fdb7931e4","_type":"span"}],"_type":"block"},{"_type":"externalVideo","_key":"b0387df7ff41","file":{"_type":"file","asset":{"_id":"file-223782f73384ca59b1fbb8847249d86e18360943-webm","_type":"sanity.fileAsset","_rev":"uiE5F13cTFeV0ltho7ll40","_createdAt":"2026-05-27T23:43:36Z","_updatedAt":"2026-07-10T18:09:40Z","title":null,"path":"files/vt347z5x/production/223782f73384ca59b1fbb8847249d86e18360943.webm","opt":{"media":{"tags":null}},"creditLine":null,"url":"https://cdn.sanity.io/files/vt347z5x/production/223782f73384ca59b1fbb8847249d86e18360943.webm","size":994482,"extension":"webm","originalFilename":"Common-Room-CLI-Two-Paths.webm","sha1hash":"223782f73384ca59b1fbb8847249d86e18360943","assetId":"223782f73384ca59b1fbb8847249d86e18360943","altText":null,"uploadId":"WxZeeusOyD4xhwIFYbLlFdGiX6HEtgmK","mimeType":"video/webm","description":null,"filename":"Common-Room-CLI-Two-Paths.webm","placeholderUrl":null,"id":"file-223782f73384ca59b1fbb8847249d86e18360943-webm","children":[],"parent":null}}},{"style":"h2","_key":"1cb8a7b79734","markDefs":[],"children":[{"marks":["strong"],"text":"Foundation gets you accuracy. It doesn't get you value.","_key":"1d9182c048a7","_type":"span"}],"_type":"block"},{"style":"normal","_key":"7db7c67710ff","markDefs":[],"children":[{"text":"A perfectly resolved, deduplicated, accurate contact record sitting quietly inside a database does nothing for anyone, until it moves. Value shows up the moment that trusted record crosses a boundary: out of the app, through a terminal, into an agent's hands, into a segment, in front of a rep at the moment they need it.","_key":"4f868d93d2ee","_type":"span","marks":[]}],"_type":"block"},{"style":"normal","_key":"e3fb16fcd0db","markDefs":[],"children":[{"_key":"a23a1f4f8148","_type":"span","marks":[],"text":"Most of what I'm seeing right now is a race toward reach: can your data get anywhere, can your agent touch anything, can your workflow run in any terminal. That race is worth running. But reach without custody is just fast access to a mess, and the cost of that mess doesn't stay flat. Every hop a piece of data takes through an automated workflow is another chance for it to drift, and a team running dozens of agents against their GTM data, continuously, can't absorb that the way a handful of manual workflows once could."}],"_type":"block"},{"markDefs":[],"children":[{"marks":[],"text":"Foundation and movement aren't two separate features. They're two halves of the same requirement. You need the identity resolution to make sure what an agent finds is true. You need the headless access to make sure that truth actually reaches whoever needs it. Do only one, and you either have a beautifully accurate database nobody can act on, or a fast, flexible layer quietly corrupting itself in the background.","_key":"8b9e8452b2c0","_type":"span"}],"_type":"block","style":"normal","_key":"0549eee9077b"},{"children":[{"_key":"dd79b161ae70","_type":"span","marks":["strong"],"text":"Try it yourself"}],"_type":"block","style":"h2","_key":"d1b1bab51f20","markDefs":[]},{"_type":"block","style":"normal","_key":"d0d469d391fa","markDefs":[{"_type":"link","href":"https://www.commonroom.io/docs/using-common-room/cli/","_key":"3225f22ccbf1"}],"children":[{"_key":"8d8bfe95c39f","_type":"span","marks":[],"text":"You don't have to take my word for any of this. Someone already built the thing I'm describing: a small open-source agent on the "},{"_type":"span","marks":["3225f22ccbf1"],"text":"Vercel AI SDK","_key":"dce0056f5b52"},{"text":", works with Claude or ChatGPT, that drives cr to do exactly two jobs, put together a call-prep brief and build a prospecting shortlist. Its own instructions to itself say, in plain text, do not invent data, do not fabricate.","_key":"b4bf6ca7fc1b","_type":"span","marks":[]}]},{"_type":"block","style":"normal","_key":"f8894f4d066d","markDefs":[],"children":[{"marks":[],"text":"That's not a tagline we added.","_key":"dc864c45cd47","_type":"span"}]},{"_key":"238bda2cca3d","markDefs":[],"children":[{"marks":[],"text":"That's the actual rule the agent runs on, because the ground underneath it is trustworthy enough to make that the rule.","_key":"0ebcb87fad9e","_type":"span"}],"_type":"block","style":"normal"}],"authors":[{"_key":"2f3ca27550de","author":{"_id":"b8ee504b-d270-45c9-b975-73632fb11ab4","image":{"crop":null,"hotspot":null,"asset":{"_id":"image-65fc8853c75d0b27e960a72737a51819df01c07b-128x130-png"}},"name":"Jared Wexler ","url":null,"linkedin":null,"title":"Director of Solutions Consulting","companies":[{"title":"Common Room"}]}}],"promo":null,"relatedPosts":[],"companies":[]},"recentPosts":{"edges":[{"node":{"_type":"post","id":"-8bd7f64e-4a77-5b09-8203-db4a449781c7","_id":"4159efdc-7f67-493b-ba88-e69a041599fc","publishedAt":"2026-07-22T17:27:00.000Z","_createdAt":"2026-07-22T17:22:48Z","_updatedAt":"2026-07-22T20:13:10Z","categories":[{"_id":"b0283bcf-1949-4988-ba0e-b43175d42846","title":"Revenue operations (PERSONA)","titlePublic":"RevOps","slug":{"current":"revops"},"status":"published"}],"mainImage":{"crop":null,"hotspot":null,"asset":{"_id":"image-d7e32a5b9b39dea843af5bbe958d2a8192a0b1e3-1200x630-jpg","altText":null,"extension":"jpg","metadata":{"hasAlpha":false,"dimensions":{"height":630,"width":1200,"aspectRatio":1.9047619047619047}}},"layout":null,"alt":null},"title":"The modern RevOps playbook: how to govern AI without becoming a gatekeeper","_rawExcerpt":[{"markDefs":[],"children":[{"text":"The RevOps leaders who governance AI too tightly become the bottleneck. The ones who don't govern it at all watch twelve teams run twelve versions of the same broken workflow. There's a better model, and it doesn't require you to approve every decision.","_key":"62fd58492036","_type":"span","marks":[]}],"_type":"block","style":"normal","_key":"3a1862ea4ba5"}],"readingTimeInMinutes":9,"slug":{"current":"revops-playbook"},"isFeatured":null,"hideMainMedia":null,"cardImage":null,"mainVideo":null,"graphic":null,"status":"published","authors":[],"companies":[]}},{"node":{"_type":"post","id":"-c6c5a7fc-6f53-57d1-b12a-28f7d746ace1","_id":"89535345-1598-4045-8c0c-278253a5052b","publishedAt":"2026-07-21T17:57:00.000Z","_createdAt":"2026-07-21T17:19:49Z","_updatedAt":"2026-07-21T18:04:30Z","categories":[{"_id":"067d08c2-833d-447f-8bed-e63211d3c644","title":"Sales teams (PERSONA)","titlePublic":"Sales","slug":{"current":"sales"},"status":"published"}],"mainImage":{"crop":null,"hotspot":null,"asset":{"_id":"image-6ff4840e12ccf9afdf5712617db5a1e00a0141d3-1200x675-png","altText":null,"extension":"png","metadata":{"hasAlpha":true,"dimensions":{"height":675,"width":1200,"aspectRatio":1.7777777777777777}}},"layout":null,"alt":null},"title":"Accounts Don't Buy. People Do.","_rawExcerpt":[{"style":"normal","_key":"280705fecfd0","markDefs":[],"children":[{"text":"Account-level intent can tell you a company is in-market. It can't tell you who's buying. Four ABM operators on why person-level signals are the difference between a target account list and actual pipeline.","_key":"efe00d400874","_type":"span","marks":[]}],"_type":"block"}],"readingTimeInMinutes":6,"slug":{"current":"accounts-dont-buy-people-do"},"isFeatured":null,"hideMainMedia":null,"cardImage":null,"mainVideo":null,"graphic":null,"status":"published","authors":[],"companies":[]}},{"node":{"_type":"post","id":"-35571749-888d-56af-961d-74e5f5a83889","_id":"48637c23-0c6c-453a-99c2-cd22fa60cb7c","publishedAt":"2026-07-17T21:48:00.000Z","_createdAt":"2026-06-08T21:18:37Z","_updatedAt":"2026-07-20T23:03:34Z","categories":[{"_id":"067d08c2-833d-447f-8bed-e63211d3c644","title":"Sales teams (PERSONA)","titlePublic":"Sales","slug":{"current":"sales"},"status":"published"}],"mainImage":{"crop":null,"hotspot":null,"asset":{"_id":"image-c6292dc1e4eb90de6df496bfedaa26717d02b767-1200x630-png","altText":null,"extension":"png","metadata":{"hasAlpha":true,"dimensions":{"height":630,"width":1200,"aspectRatio":1.9047619047619047}}},"layout":null,"alt":"Webinar with Colin Netal, Head of Demand Generation at Otter.ai"},"title":"The 5 usage-based plays Otter.ai used to 2x outbound pipeline","_rawExcerpt":[{"_key":"a99ad319153c","markDefs":[{"href":"http://otter.ai/","_key":"36593f259dee","_type":"link"}],"children":[{"_type":"span","marks":[],"text":"Most teams building a sales-led motion reach for lead scoring built on who a buyer looks like on paper. Few ask the question that actually predicts a deal: what is this account doing inside your product right now? Colin Netal, Head of Demand Generation at ","_key":"6cc290f86a32"},{"_type":"span","marks":["36593f259dee"],"text":"Otter.ai","_key":"00e6e7fec48d"},{"text":", scored first-party usage instead of firmographics, built five plays on top of it, and doubled outbound pipeline over","_key":"ccab46558549","_type":"span","marks":[]}],"_type":"block","style":"normal"}],"readingTimeInMinutes":8,"slug":{"current":"otter-webinar-recap"},"isFeatured":null,"hideMainMedia":null,"cardImage":{"crop":null,"hotspot":null,"asset":{"_id":"image-c6292dc1e4eb90de6df496bfedaa26717d02b767-1200x630-png","altText":null,"extension":"png","metadata":{"hasAlpha":true,"dimensions":{"height":630,"width":1200,"aspectRatio":1.9047619047619047}}}},"mainVideo":{"_key":null,"_type":"externalVideo","url":null,"duration":null,"vimeoId":null,"loomUrl":null,"file":null,"previewImage":{"asset":{"_id":"image-c6292dc1e4eb90de6df496bfedaa26717d02b767-1200x630-png","metadata":{"dimensions":{"width":1200,"height":630}}}},"previewVideo":null,"previewCta":null},"graphic":null,"status":"published","authors":[],"companies":[]}}]}},"pageContext":{"id":"-f950abd3-e1e5-5c7a-94f2-00ae6d1796c0","now":"2026-07-24","series":null,"categories":["24ca40fc-7961-4bb6-9045-e13e6900f746"],"authorIdsWithPages":[]}},"staticQueryHashes":["1103062666","1114827244","1205817653","1232385435","1291262602","1342715763","13725269","1376961975","1427225953","1520198276","1590856782","1594459315","1645518079","1702343420","189493211","2141329968","2267330285","2344000787","2349192796","2392551400","2520474177","2608229151","2694698993","2763739722","277772772","2926084749","2929656701","3030471832","3094811859","3287603011","3302639276","3304847038","3668403506","3696059859","3822191430","3909597242","3917076254","4160255059","4201871693","4222375652","455672959","709110368","769109155","779970088","975170159"]}