For years I had the same slightly annoying feeling every time I opened Ads Manager.
Meta tells me one number. My inbox tells me another. Google sits somewhere in the middle, smiling politely. And the one question I actually cared about, which ad brought me a customer who paid, was always the one I could answer the least.
I’ve been doing marketing and sales for more than 15 years. I’ve spent a lot of money on ads, other people’s and my own. You’d think by now I’d have this figured out. I didn’t. So I built something.
It’s called Straycy (opens in new tab). It’s a WordPress plugin, I launched it this week, and this post is the story behind it: what it does, why it exists, and where I want to take it.
The problem everyone knows and nobody wants to set up
Here’s the thing most marketers already know. The tracking pixel on your site runs in the visitor’s browser. Ad blockers block it. Safari and Firefox chop its cookies. iOS made a mess of the rest. So a good part of your conversions never reach Meta or Google, and the ad algorithm optimises on a picture with holes in it.
The fix is also well known: send your conversions from your server, not only from the browser. Meta calls it the Conversions API, and the others have their own versions.
And then you look at how people actually do that. A GTM server container on Google Cloud. Or a paid forwarding service. Tags, triggers, data layer variables, an afternoon in preview mode, and one more monthly bill. I know how to set all that up and I still didn’t want to. Now imagine how a dance studio owner or a small web shop feels about it.

I built it for my own marketing first
Straycy started as a tool for me. I run ads for my own projects, including a dance studio (yes, I teach bachata, it’s a long story), and I wanted to finally see which ads bring paying customers. Not clicks. Not “leads” that never answer the phone. Customers.
I also wanted it to live where my sites already live: inside WordPress. No extra server. No cloud bill I’d forget about. Install a plugin, paste a few keys, done.
After a while it worked well enough on my own sites that keeping it to myself started to feel a bit silly. So I decided to share it.
So what does it actually do?
In plain words: Straycy remembers where every visitor came from, notices when they become a lead or a customer, and tells your ad platforms about it from your own server.
When someone lands on your site, Straycy grabs the source right away: the UTMs, the referrer, the ad click IDs (fbclid, gclid, ScCid, oppref and friends). When that person later fills in a form or buys something, the source is still there, stuck to the lead.

Then it sends that lead or sale to Meta, ChatGPT Ads, Reddit and Snapchat from your server, and to Google with Enhanced Conversions. If the browser pixel also fires, both carry the same event ID, so the platform counts the conversion once and keeps the better data.

The part I’m secretly most proud of is that you don’t set up any events. Straycy finds your forms by itself (Forminator, Contact Form 7, WPForms, even custom JavaScript forms that redirect), your WooCommerce checkout and your Stripe payments. Stripe sales only count after Stripe confirms the payment, so the revenue is real.

A few more things it does that I wanted for myself:
- Every person becomes one contact, so you see their whole story and their lifetime value, not ten random rows.
- Your data stays in your own WordPress database. It doesn’t go through my servers.
- It waits for your cookie banner. By default, no consent means no ad tracking. That’s how it should be in Europe, and honestly everywhere.
ChatGPT is an ad channel now, which is wild
Not long ago “ChatGPT traffic” meant someone asked a question and clicked a link. Now ChatGPT runs ads too. Straycy sends conversions to the ChatGPT Ads Conversions API, and it tells apart two very different visitors: someone who clicked a ChatGPT ad, and someone who found you in a ChatGPT answer. Those are not the same thing, and you really want to know which one buys.
Things I learned building it
- Cookie banners are their own universe. Every consent tool stores the visitor’s choice a bit differently, and some people paste the banner in as a script instead of using a plugin. Making tracking follow the banner properly, including on the server side, took way more work than I expected.
- Caching will humble you. You test everything, it all works, and then a caching plugin happily serves the first visitor’s version of the page to everyone else. Lesson learned, fixed, and now I test in private windows like a paranoid person.
- Trust nothing a URL tells you. If a sale isn’t confirmed by Stripe or WooCommerce, it doesn’t count. Fake conversions are worse than missing ones, because the algorithm learns from them.
- A friendly first customer is gold. Anton from Dance Social Helsinki lets me test new features on his live site, and tells me straight when something looks off. Every founder needs an Anton.

We have been running Facebook ads for our dance classes for a long time. With Straycy, we saw an uplift in accuracy and which ads actually bring us paying customers.
Anton, Dance Social Helsinki
Where I want to take it
Right now Straycy answers “which ad brought this lead?”. The next question is the one that really moves money: what was that lead actually worth?

Lifetime value per channel is already in there. Next I want you to be able to mark a lead as a won customer, with the real value, and have Straycy send that back to the ad platform that brought them. Then Meta and Google stop optimising for form fills and start optimising for people who actually pay. That’s the stuff big companies pay a data team for, and I think a small business with a WordPress site deserves it too.
Also on the list:
- Server-side Google Ads, on top of the Enhanced Conversions that work today.
- More platforms. Microsoft, TikTok, LinkedIn, Pinterest and X are all on the list.
- A proper view for agencies that run tracking for lots of client sites.
The big picture is simple. I want every small business to know which marketing actually makes them money, without hiring anyone or learning what a server container is.
Want to try it?
There’s a free 30-day trial, no credit card. Plans start at €9 a month for one site. You can find everything at straycy.com (opens in new tab).
Launch week: the first 20 customers get 75% off any plan for 12 months with the code FOUNDER75. Ends Thursday 29 October at 23:59 (Tallinn time). Claim it here (opens in new tab).
And if you try it, tell me what breaks. Seriously. Email me at hi@straycy.com or message me on LinkedIn. I read everything.
Johannes
P.S. Yes, every link to straycy.com in this post has UTMs on it. Old habits.



