Changelog What shipped, and when.
Everything on this page is a dated change in the product, newest first. Nothing here is a plan.
One balance for capture and Mend
Pricing
Captured posts and judged orders now spend from one prepaid balance, priced in pounds from measured cost. The per-post ledger is gone. A workspace without a card stops at what its plan includes, and past that an order is still attributed on hard evidence alone, so attribution never stops.
What buyers say, grouped
Mend
Mend reads the answers buyers give in your forms and groups the product attributes they mention, with how they feel about each. A month of free text becomes a short list of what is landing and what is not.
Pipeline health, in the open
Mend
Every Mend pass now runs from a queue with retries, and the Engine and Home pages show how far behind it is and why, pass by pass. A step that failed stays visible as failed instead of quietly going missing from the numbers.
Mend: a verdict, with its journey
Mend
The attribution engine, rebuilt. Codes, click ids and tracked links are settled in code first. Where they are not enough, the AI answers small checks and code makes the call with versioned weights. Every order gets who introduced, assisted and converted it, one of four verdicts (Evidence, Possible, Coincidence or Unexplained), and the journey behind it: what was seen, asked and answered.
Email and SMS are touch-points too
Campaign analytics
Campaigns and flows from Klaviyo land as sends with who each one reached. Attribution reads a send the same way it reads a post, so a month's revenue can be split across creators and email on one set of evidence instead of two. Mailchimp, Meta Ads and Google Ads are next, and will land the same way.
A partner's evidence is shared, not repeated
Attribution
When several of a partner's posts could explain one order, the evidence is divided across them rather than handed to each in full — so five posts no longer read as five times the proof. Orders that arrive without a form answer are now scored on their own facts instead of being skipped.
A code can be placed anywhere it is offered
Discounts
Placement stopped meaning "on a Shopify store". The same code can now be put on a connected email tool, and coupons that already exist there import back as MISSIN discounts — matched to a code you already hold, or created as one. One record, every surface it appears on.
Post Worth, and what the category charges
Pricing
Named what a post is worth. A captured post is priced from its measured cost, and Post Worth is what that post returned: the orders it earned and the revenue attributed to it. The pricing page now leads with it, and the home page carries every published competitor price beside ours on one axis.
Attribution moved into Postgres
Attribution
Scoring now runs where the data already is, rather than being assembled on the way out. Same model, one fewer hop, and a score that can be queried rather than only rendered.
Shopify orders and customers, and Stripe checkouts
Integrations
Orders and customers sync from a connected Shopify store, and Stripe-settled checkouts land as orders alongside them. Connector sync and webhooks were reshaped at the same time, so a provider that goes quiet is a visible state rather than a silent gap.
New and returning customers get their own flow
Forms & Incentives
A form can now ask a first-time buyer and a returning one different questions, and reward them differently. Recognising a returning customer means recognising a prior order, so the switch turns itself on the moment a store is connected.
Capture is priced off measured cost
Pricing
Every capture surface was re-measured against the real bill and its price rebuilt on those numbers, rather than on estimates. Where a surface turned out cheaper than modelled, the price came down with it.
Captures queue instead of colliding
Partner ROI
Every path that starts a capture now writes a queued run and returns immediately. One pump batches the queue across workspaces under the account's slot limit, with a quarter of the slots reserved for a human pressing Fetch — so a scheduled sweep can never make a person wait.
Stopped paying for faces we already had
Partner ROI
A profile-image refresh was re-reading twenty accounts an hour and never recording that it had, which was half a month's capture bill for pictures already on our own bucket. One automatic attempt, then manual — and the saving is in the capture price, not in our margin.
Campaigns pull their own posts, by signal
Campaign analytics
A campaign carries hashtags and mentions. Every post we capture is filed against them on all five networks, and on Instagram, TikTok and YouTube a hashtag can go and find posts from accounts you never signed — which is usually where the half of a campaign nobody was counting turns out to be.