The go-to-market system I built at Growth-X, drawn as it actually ran. Every channel, what happened after the click, and how ads brought the same people back to the site. I am running the same machine again now, for my own practice.
Most go-to-market spending pays for a visit and then loses the visitor. At Growth-X, a visit got identified where possible, recorded against a person, followed up, and added to an ad audience, so we could reach the same person again for far less than the first click cost. Below is how each part worked, in the order I would build it.
Fourteen tools in the diagram, grouped into the five things they actually do. Stage five sends people back into stage one.
Four sources, all pointing at the website. Blog posts that answer questions prospects actually asked. Google Ads on a small budget. LinkedIn posts from the whole team, most of them from me as the founder. And outbound, aimed only at accounts showing a buying signal.
Two parts of this matter more than they look. The first is the LinkedIn profile. I had thousands of connections, and what counted was whether they reacted to my posts, because every reaction shows the post to that person's own network.
The second is the signal. We watched for companies that had just raised a Series A, because a company that just raised is about to spend on growth. Crunchbase and similar sources told us when it happened. A comment on one of our LinkedIn posts counted as a signal too, and went into the same outbound queue. Without a signal, we did not reach out.
Buying clicks before the rest of the engine exists. With nothing behind the click, the visitor leaves and you never learn who they were.
Everything lands here, and most visitors leave without saying who they are.
97% of visitors leave without converting.
Marketo and SiriusDecisions, via Happierleads
Which is why the destination rule matters. If you made a video, host the page on your own domain and embed it there. If you are sharing a resource, put it on your site, or at minimum route it through a link you control. LinkedIn will not tell you who clicked a link you shared, so a link that leaves your site is a touch you will never see.
Never send customers to a place that is outside your website, because you want to track it.
One caveat. The moment you send someone to your site, they assume you are selling. If the page gives them what the message promised, that is fine. If the message promised something useful and the page is a sales pitch, they leave.
This stage turns anonymous traffic into names, and it is the one most websites skip. RB2B is the tool I use. The free tier resolves companies. The paid tier resolves people, which means the LinkedIn profile of someone who was just reading your pricing page.
Just one person buying your product could pay for their subscription.
If you cannot afford the paid tier, do this instead. Take the company level identification, which is free, and match it against the people you have already contacted in outbound. You know who you wrote to at that company. Now you know that company is on your site this week. That is a warm follow-up for zero dollars.
The free Slack feed is the other thing to use, and it is where a technical founder gets ahead. RB2B posts each identification into a Slack channel, and a script can read it.
Slack alert → script reads the channel
→ cron or cloud routine, once a day
→ write the hit into your own store
→ raise that lead's score
→ score crosses your line → it goes in the outbound queue
You can build a script that reads from Slack, and with a cron job … populate your stats of the GTM machine and then trigger whatever action you need once you identify. Which can just be scoring higher a specific lead.
About that score, since everything after this depends on it. It is one number per person, and every recorded touch adds to it. Opened a post, visited twice, came back after a DM, arrived from a retargeting ad. You set the threshold where a human gets involved. Without a score, you have no way to decide which of two hundred names to follow up first.
Then enrichment fills in the gaps, and all of it lands in a CRM that records every touch, not just the last one. Every later stage reads from that record.
Usually it takes six, seven steps to convert a lead into a person that will actually do a specific action, like booking a call or trying a demo.
| Tool | What it does | Cost |
|---|---|---|
| RB2B free | Company level identification, roughly 150 a month, plus the free Slack feed | $0 |
| RB2B paid | Person level, name and LinkedIn URL of the visitor | from ~$79/mo |
| Clay | Enrichment and verification. Priced in credits | skip, see below |
| Your CRM | The touch ledger. Any CRM, including one you build | $0 to start |
Now you know who they are, so you reach out. A connection request, then a few messages after they accept, each one carrying something useful. Past that, the places nobody bothers with. Follow them on X, comment on their posts there, react to an Instagram story. None of these closes anything on its own. Each one is another touch.
Any box you add to this GTM machine is an extra touch, and any extra touch, if done right, does increase your chances that the client will take actions.
An accepted connection also works like a newsletter subscription. Once someone connects, your posts show up in their feed, and every post after that is a touch you did not have to send.
A newsletter is your LinkedIn feed.
Email is the channel I would use least at this stage. A cold email asking for a call gets ignored, and a sending domain that gets flagged stops reaching anyone. Put the addresses you collect into retargeting audiences instead (stage five). Write an email only when the signal is very strong, or after five or six other touches, and when you do, send something useful and leave the pitch out.
One thing has changed since I built this. Everyone has AI now, everyone sends outreach at volume, and the average message got worse. Four sentences written about the recipient stand out more than they did in 2019. Keep it short and specific, and only write where there is real intent. Where there is no intent yet, post, stay visible, and send nothing.
You want to be useful. You want to give value. You don't want to get value.
Here is a real message. I send it today to people who looked at buying Growth-X on Acquire.com when it was for sale. It is shown as it goes out, except that the revenue line is left out here.
You were interested in Growth-X a while back. I sold it in June 2025. Nine years, no funding, 500+ clients. I made the whole GTM machine public, 9.4:1 LTV to CAC. riccardopisano.com/gtm-engine I do this for founders now. Worth a look for you or one of your companies? 30 minutes, free. riccardopisano.com/book
It opens with the one thing we have in common, gives them something useful before asking for anything, and asks once. The same day, a LinkedIn connection request goes to the same person with a one line note saying who it is from, so they recognise the name in two places.
Not every first touch has to be a message. One opener that got me a reply was a comment under a founder's LinkedIn post. The post was about having three products and looking for a GTM hire. I wrote that with three products and no clear signal from the market about which one people wanted, a hire would not solve it, and that picking one product first would. A reply under a post is public. The author gets something useful whether or not they answer, and everyone else reading the thread sees how you think before you have ever messaged them.
The enriched emails from stage three become customer list audiences on the ad platforms. This is where most of the addresses you collect should go. The people already in your engine keep seeing you, and every ad sends them back to the website, where stage two identifies them again.
This stage is also what makes paying for stage one reasonable, and I want to be clear about my own position here.
Every single person that gets into your website then gets retargeted in so many ways that your $1 value expense on Google Ads is just an entry point. It is not getting lost.
The same dollar buys something different when the click lands in a system that will reach that person another six, seven or eight times. That is the only case where I think paid traffic makes sense, and it is why this stage gets built before the ad budget goes up.
Running retargeting without stage three. No identification and no enrichment means no list to upload, and you are paying to reach strangers again.
The retargeted lead clicks back to the site. That visit is identified again, the score goes up, the CRM records another touch, and they re-enter the sequence one step further along than last time. Each round costs less than the first, because you already know who the person is.
At Growth-X, a customer was worth 9.4 times what it cost to win them, a 9.4:1 LTV to CAC ratio. The benchmark usually quoted as healthy is 3:1.
This is what makes us grow without much investment, to an exit.
Build it in this order. Each stage needs the one before it in place to be worth anything.
Build me a small script that turns RB2B's Slack alerts into scored leads. 1. Read new messages from the Slack channel where RB2B posts website visitor identifications, with a Slack bot token taken from an environment variable. Use each message's ts as its unique id and skip any ts already processed, so re-running the script never counts a visit twice. 2. Parse each alert into name, title, company, company domain, LinkedIn URL and the page they visited. Keep company-only alerts too, with the name left empty. 3. Save every alert as a touch in my CRM, which is [HubSpot free / a Postgres table / a Google Sheet]. One record per person, one row per touch. 4. Score each person and store the total. First visit 1, second visit 3, pricing page 5, a return visit after I messaged them 8. 5. When a person's score reaches 10, post them and their touches to my Slack as ready for a human. 6. Run it once a day on a schedule, and first show me a dry run against the last 50 messages that writes nothing.Read what it writes before you run it on real data.
Growth-X is gone. It was acquired in 2025 and the buyer moved away from this category. Where the diagram says Growth-X, use HeyReach or whichever outreach tool you prefer, and stay inside LinkedIn's terms while you do. The engine never depended on one tool. The sequence logic we ran inside Growth-X was never published.
I would skip Clay today. It was the right call when we built this, but credit pricing gets expensive fast. Most of what we used it for is now a short script calling a few APIs directly, and a coding agent can write it for you.
First you get a bird's-eye view of your whole business, the sources, the actions, the traffic and the conversions.
Our first goal is measuring, without being able to measure there is no point in running any GTM campaign yet or trying something new. So in the first session we open the GTM tool in my Founders Workroom and together we draft the GTM map you have today, a block for every source like SEO or LinkedIn, the LinkedIn invites and emails you send, the website visitors, demo booked, free trial and paid client, then we connect the blocks. Then we think about how the data of each block can be populated, and from which data source, like Google Analytics, Stripe, email scans or LinkedIn scans, and how to integrate it through API keys, AI agents or webhooks, and I explain every step.
After the call I send a full summary of the meeting and the to-do list for before the second session, both show up in the Workroom, and in between you work on connecting all the data sources, because we want all the data showing before we start the second session.
In the second session every block on the map has a number in it, so the first thing we do is read the funnel. In the image, with example numbers, 35% of visitors open the web app, 12.1% of those sign up and 19.2% of the trials pay, and each of those is a conversion rate we can work on. Then we plan how to identify the current traffic and enrich its data, and how to add more touch points like LinkedIn posts or retargeting, these are stages three to five above. Then we work on creating experiments to improve the conversion rate around every single funnel step, it really becomes hypothesis, experiment, test, experiment, and we keep adding blocks. Attribution is not the most important thing, the point is to see how the conversion rates change with more time and more touch points.
I wrote both sessions in full in the first month with a GTM advisor.
I answer these as a go-to-market advisor and GTM consultant in Miami, in person across South Florida and remotely everywhere else.
I am one, and the specific thing I bring is that I built the machine before I advised on it. At Growth-X I ran the revenue side of a company I also wrote the code for, took it to 500+ B2B clients with no outside funding, and sold it in June 2025. The engine is written out on this page stage by stage, with the tools and the thresholds, and it ran at 9.4 to 1 LTV to CAC. Most go-to-market consultants sell you a strategy deck and leave the building to you. I work the other way round, a working session every week, $995 a month, where you build it and I tell you what I did and what it cost me to learn. If you want somebody to run the channel for you instead, that is deeper Head of GTM work, scoped per company and billed at $249 an hour beyond the month.
Put a visitor identification script on every page, including the thank-you page. I use RB2B. Its free tier resolves companies, roughly 150 a month in my case, and posts each identification into a Slack channel a script can read. The paid tier, from about $79 a month, resolves people, which means the LinkedIn profile of someone who was just reading your pricing page. If you cannot justify the paid tier yet, take the free company level hits and match them against the people you already contacted at that company in outbound. You know who you wrote to, and now you know that company is on your site this week, which is a warm follow-up for zero dollars. The figure I work from, from Marketo and SiriusDecisions, is that 97% of visitors leave without converting, so this is the stage that decides whether the other 97% are traffic or names.
A funnel ends at the conversion and an engine does not. The system I built at Growth-X ran in five stages. Attract, through SEO, a small Google Ads budget on buying intent keywords, LinkedIn posts from the founder account, and outbound aimed only at accounts showing a buying signal. Capture, on a website that owns every destination, because a link that leaves your site is a touch you will never see. Identify, which turns anonymous traffic into names and a score. Engage, which follows up in the order the score says. Retarget, which puts everyone who visited into an ad audience so you can reach the same person again for far less than the first click cost. Stage five feeds stage one, and that loop is the part that makes it an engine. It ran at 9.4 to 1 LTV to CAC with zero outside funding, and I am running the same machine again now for my own practice.
Neither, first. Buying clicks before the rest of the engine exists is the trap, because with nothing behind the click the visitor leaves and you never learn who they were. Put analytics you own and the identification script on every page first. Self-hosted Umami is free and RB2B's company tier is free. Then retarget the people who already visited, because that audience costs a fraction of a cold click. Cold outbound comes last, and only against a buying signal, a funding round, a relevant job post, or a comment on one of your posts. Without a signal we did not reach out.
Usually six or seven. That is the number I worked with at Growth-X, and it is why every touch has to be recorded against the person rather than counted once and lost. Give every touch a point value, opened a post, visited twice, came back after a DM, arrived from a retargeting ad, and set the score at which a human gets involved. Without a score you have no way to decide which of two hundred names to follow up first.
Our first goal is measuring, without being able to measure there is no point in running any GTM campaign yet, so we open the GTM tool in my Founders Workroom and draft the GTM map you have today, one block for everything in your funnel, like SEO, LinkedIn invites, website visitors, free trial and paid client, and we connect the blocks. Then for each block we look at which data source its number comes from, like Google Analytics or Stripe, and how to integrate it through API keys, AI agents or webhooks. After the call the summary and the to-do list for before the second session are in the Workroom, and you work on connecting all the data.
I build this as a fractional CTO and Head of GTM, which covers both halves the machine needs. Someone has to write the script that reads the Slack channel, and someone has to decide whether a lead is worth the touch. On a free thirty minute call I look at the go-to-market you run today, where the leads drop out, and what a version built for your company would include. If you would rather work on it an hour a week than have me build it, that is what the weekly sessions are for.
Book a free call to assess your GTM engine