Prooflytics
— Changelog

Every change we ship.

Pay-per-service means you pay for shipped value, not roadmaps. Here's a public record of everything that landed — features, integrations, security, performance.

emailsettings

You decide which emails you get — and the automatic ones stopped

There was no way to turn off a Prooflytics email. Now every kind has its own switch under your account, the unsubscribe link in any email actually works, and the briefs and reports that used to send themselves on a schedule no longer do.

Two changes that belong together.

Every email now has a switch

Prooflytics sent mail on its own schedule and nothing could stop it. The notification checkboxes that looked like the answer saved nothing, and the unsubscribe link at the bottom of an email did nothing at all.

Settings → Notifications now lists every kind of mail we send with its own toggle — the reports, the alerts, the onboarding notes — and it is yours, not your workspace's: each person on the team decides for their own inbox. The unsubscribe link in any email writes the same setting, so the button in your mail client and the page in the product are one mechanism rather than two that disagree.

Nothing sends itself any more

The daily brief email is gone, and so are the schedules behind the morning pulse, the Monday report and the first-of-the-month report. Nothing arrives because a clock said so.

What is not gone is the work behind them. Your accounts are still analysed overnight, and the recommendations that produces are waiting in Actions when you open the product — that is where the daily read lives now. Reports are made when you want one, from the New report button, over the period and scope you choose.

If you relied on the Monday report landing in your inbox, generate it from the reports page instead. If you would rather have some of these back on a schedule, tell us — that is a decision we would like to make with the people it affects rather than for them.

dashboardui

The interface got a full pass — dropdowns, focus, and 4,224 font sizes

Every dropdown in the product now renders in your theme instead of the operating system's. Keyboard focus is visible everywhere. And the text, corners and shadows were pulled onto one deliberate set of values rather than four thousand accidental ones.

A product you look at every morning should not feel improvised. This was a sweep for the things that quietly made it feel that way.

Dropdowns are ours now. Every picker in the product used to be the browser's native control: styled down to the box, then handed to the operating system the moment you opened it — OS font, OS background, your theme ignored. In dark mode it was the single strongest "homemade" signal the product had, and it could not be styled away. All of them are replaced, across the dashboard, hypotheses and settings.

You can see where you are typing. Keyboard focus was invisible on a long list of controls — press Tab and the highlight simply vanished. Every button, field and toggle now shows a focus ring, and it appears for keyboard navigation without following your mouse clicks around.

One set of values instead of thousands. The text was set in 33 different sizes across more than four thousand hand-written values, corners in dozens of radii, shadows wherever they landed. All of it is now on a named scale — a handful of type sizes, four corner radii, three levels of elevation — which is why headings now line up between screens and cards stop being subtly different shapes.

Two things this uncovered, both fixed: 272 elements were rendering with 4px corners while every file said 8px, and a class-merging step was silently deleting the correct text size in 123 places. Neither was visible in the code; both were visible on screen once we measured the live page instead of reading the source.

Empty states got a pass too. Seven of them said a version of "no data" and named no cause; each now says what is actually missing and gives you the one action that fixes it.

integrationsattribution

Connecting your CRM stopped being a guessing game

Working out which field in your CRM carries the traffic source used to be a naming contest — a column called "source" won, whatever was actually in it. Now the decision is made from the values, checked against the evidence before it is believed, and watched afterwards in case it stops being true.

Every attribution number depends on one unglamorous decision: which field in your CRM says where a deal came from. Get it wrong and every channel report downstream is confidently wrong.

That decision used to be made by field name. A column called source won, whatever it held — and in a real CRM the column called source is often free text a salesperson types, while the one that actually carries the truth is named after an internal process nobody outside the company would recognise.

Three changes:

Decided by content, not by name. We read what the fields actually contain across your records and choose the one whose values behave like traffic sources. A field of UTM values wins over a field called "Source" holding "call", "call", "referral from Tom".

Checked before it is believed. The proposed map is tested against the evidence it claims to explain. If the numbers it produces do not hold up, it is not applied — you get a question instead of a silent wrong answer.

Watched afterwards. A mapping that was right in March can stop being right in July, because someone adds a pipeline or renames a stage. When a confirmed mapping stops matching what is arriving, we notice and say so rather than carrying on.

And when you connect a second workspace or a second CRM of the same kind, what you confirmed the first time is used as the starting assumption — you should not have to answer the same question twice.

One related fix worth naming: deals whose source had never been profiled were being read as deals with no source, which quietly dropped live mappings out of attribution. "Not looked at yet" and "nothing there" are different facts and now stay different.

reportsdashboard

Reports you compose, instead of a report we chose for you

The daily page stopped being one fixed layout over whatever dates were in the URL. You now build a report — pick the period, what it compares against, which channels count and which sections belong in it — and it becomes a document with a fixed moment, saved in a library you can go back to.

Until this month the front page rendered one fixed brief over whatever dates it happened to have. That conflates two different things: a report is a document with a period, a scope and a moment; the page listing them is a filing cabinet.

Now they are separate. The front page is the library — every report you have issued, with its period, what it was compared against, which channels it covered and how many sections it carried. New report opens a dialog with everything that shapes the document on the left and everything that goes in it on the right, and it opens pre-filled: a real period, a standard comparison, all your channels, the usual sections. Change what you want and generate.

Sixteen sections are available. Some are worth calling out because they answer questions the old brief could not:

Which channels actually close. Cost per lead is the number a channel can win on while closing nothing. This section walks each channel down your own pipeline stages, so a channel that opens a quarter of your deals and closes a twentieth of your wins says so out loud. Where too few deals have entered a step to mean anything, it withholds the rate rather than printing one — half of two deals is "50%" and someone will act on it.

What we changed this period. You record the site work, the tracking changes, the publishing. The report reads them and explains itself with them. This is also the only material it is allowed to draw a cause from — anything else it says about why is labelled a hypothesis, because a report that invents reasons is worse than one that only counts.

Two revenue numbers, and why they differ. What closed in the period against what the period's own leads earned, reconciled, with a line underneath saying how much of the revenue and how many of the leads carried no identifiable source at all. A blended return that quietly credits your ads with revenue nobody can trace is the easiest number in marketing to fool yourself with.

Reports start as drafts. The library only lists what you actually issued, so an abandoned attempt does not sit in your record forever.

competitorsaidashboard

Competitor monitoring now covers LinkedIn, and Apply now works on Google Ads

B2B operators tracking SaaS competitors finally have LinkedIn coverage alongside Meta. The Action queue's one-click execution — pause an underperformer, change a budget — now works for Google Ads campaigns too, not just Meta. Two long-standing "Meta-only" surfaces became multi-platform in one push.

Two product surfaces that had been quietly Meta-only are now multi-platform. If you're a B2B operator, this changes both how you see what competitors are doing and how you act on what your morning brief recommends.

Competitor monitoring now covers LinkedIn

Until this week, the competitor kanban only knew about Meta ads. If you sell to procurement teams, RevOps, or any role that lives on LinkedIn — that meant your competitor view was missing the platform where half their spend actually lands. Now it doesn't.

Each tracked competitor on your watchlist gets a small Track toggle in the header: Meta on by default, LinkedIn opt-in per competitor. Flip LinkedIn on for the B2B brands you care about; leave it off for the DTC ones where it would just add noise. Next refresh pulls from both libraries, classifies every ad into Active / Cooling / Killed the same way, and renders one unified kanban with a small source pill (Meta or LinkedIn) on each card so you always know where the creative came from.

The morning intelligence summary is rewritten to read both libraries at once. If a competitor runs distinct messaging on Meta (broader, B2C-style hooks) and LinkedIn (role-targeted, decision-maker copy), the summary calls that out explicitly. If their entire investment is on LinkedIn — that's a signal your category is B2B-led and worth a strategy conversation. If it's split evenly, you see the split with examples tagged by source.

How to use it: open any tracked competitor → toggle the LinkedIn pill on → hit Refresh snapshot. The next sync pulls both libraries in parallel; you'll see the platform breakdown at the top of the page ("12 Meta · 5 LinkedIn active ads") and the kanban cards each carry their source pill.

Apply now works on Google Ads

The Action queue — the page where the morning brief turns into one-click moves on your ad accounts — used to mutate Meta only. Recommendations about your Google Ads campaigns showed up but the Apply button silently broke when clicked. That's fixed.

Every queued recommendation now carries a small platform pill (Meta / Google Ads / LinkedIn) so you see at a glance which account the action will hit. Apply is wired for Meta and Google Ads — pause an underperformer, resume something you paused too quickly, change a campaign's daily budget — and every applied change keeps a before/after record you can review and undo later. LinkedIn recommendations stay informational (you act in LinkedIn Campaign Manager directly) until partner approval lets us write back there too; we'll surface that distinction in the UI instead of failing silently.

The guarantees you've always had on Meta apply to Google Ads now: per-recommendation approval, never auto-executed, full one-click rollback, and the undo path puts the campaign back exactly where you found it.

How to use it: nothing new to enable. Your existing morning brief already produces recommendations for every connected ad platform — they're now actionable. If a recommendation card hides its Apply button, it's because the specific change isn't supported on that platform (Google Ads has no creative-level budget setting, for example), and the card explains why instead of leaving a dead button.

What's next

We're watching how operators use the new LinkedIn coverage — which competitors get the toggle flipped on, how often the platform breakdown shifts the analysis, where the unified summary surfaces something a single-platform view would have hidden. Feedback on which competitors you'd run LinkedIn on, and where the kanban needs a per-platform filter — tell us.

landinguxai

A landing page that shows the product instead of describing it

Three role cards under the hero so you find your pain in 5 seconds. An "Ask anything" demo midway down where you see Prooflytics write a structured answer. Animated step visuals, a live architecture diagram, three questions worth asking before another quarter passes — plus FAQ pricing brought current and one canonical pricing destination from every email.

We rebuilt most of the public landing page this week. The goal: stop explaining what the product does in paragraphs, and start showing it.

What changed

Pick your role — see your pain

Right under the hero, three cards now ask which operator you are: agency owner, B2B SaaS CMO, or solo marketer running performance for a small team. Each card names the pain Prooflytics tackles for that role — the CPL spike with no explanation ready, the CFO asking why Q1 spend underperformed, the small team drowning in tools that aggregate data but never explain it. Click your role and the page takes you straight to a demo question written for that pain.

See what tomorrow's brief looks like

The "Today's brief" card in the hero now animates as you land on the page — header settles in, the headline writes itself, the three ranked actions populate one by one, and the Approve button hints that the next move is yours, not the platform's. The card mirrors what you'll actually get every morning, down to the source tags.

Ask Prooflytics anything

A new section midway down the page lets you click one of five questions an operator actually asks — "Why did our CPL spike on Tuesday?", "Which channel is driving pipeline this quarter?", "What competitor moves should I watch?", "How do I explain this week's drop to my CFO?", "Where am I overspending right now?" — and watch Prooflytics write the answer. Every reply has the same shape: short prose, ranked metrics, P1/P2/P3 next moves, source tags. Same structure as your daily brief.

How it works — now with motion

The three-step "How it works" section gained a mini-visualization on each card: channels connecting in sequence, goals locking in with a target CPA you can watch the operator change, daily recommendations being applied with one click and a rollback marker appearing right after. Each visual shows the moving part the step is actually about.

Five layers, one signal

The Architecture section is now a live diagram. A signal climbs through five layers — data, attribution, AI reasoning, recommendation, action — and you see which layer it's in at each moment. The bottom-most layer pulses first, then the next, until the signal lands as a one-click action at the top. The visual tells the same story the section's been telling in words.

Three questions worth asking

The final CTA section now asks three questions an operator should sit with before another quarter passes — why keep paying for aggregation that doesn't explain itself; how long until the next CPL spike, and who writes the answer; what competitor activity is invisible right now. Each comes with a one-line response. The Start-trial button stays where it always was.

Pricing, cleaned up

The pricing answers in the FAQ now reflect the current tiers — Starter at $79/month, Growth at $149, Scale at $449, plus a custom Enterprise tier — and the 14-day trial that doesn't require a credit card. Every email and every in-app prompt now sends you to the full pricing page when you're ready to compare tiers, so you always see the whole tier comparison instead of a stripped-down view.

What's next

We're watching how operators use the new "Ask anything" demo — which questions get the most clicks, how long the page holds attention, which roles convert. That feeds the next iteration. If you've got a question we should have on the chip list, tell us.

aiassistant

Prooflytics Assistant — an AI analyst in your sidebar

A workspace-aware AI assistant that lives on every page. Ask it about your performance, your latest brief, what's been moving, and what to do next. Read-only in this first version; one-click actions are coming.

The Prooflytics Assistant is a chat panel that lives on every page in the app and answers questions about your account, using your data. Use the floating Ask AI button to open it; close it with Esc.

What you can do with it

  • Ask anything about your numbers. "What changed in CPA this week?" "Which channel is dragging?" "What does my brief say about Meta?" The assistant answers from your data — your latest brief, your recent performance, your applied actions.
  • It remembers what's been happening. Briefings, applied recommendations, hypothesis outcomes — the assistant builds a sense of what's been working in your account over time, not just what happened today.
  • It surfaces the relevant past. When you ask a new question, the assistant pulls in earlier moments that match — useful when you remember that spike but not when it happened.
  • Same conversation, two surfaces. Anything you start in the sidebar shows up in your full Chat view, and vice versa.
  • Sized for the way you work. Drag the sidebar wider for a long conversation; the page reflows so your filters and topbar stay visible.

What it won't do (yet)

  • No writes. It won't pause an ad, change a budget, or create a hypothesis on its own — those come next, with a confirm step every time.
  • No proactive pings. It only speaks when spoken to today. A focused nudge layer ships in the next release.

Privacy and safety

  • Your assistant only sees your workspace. It cannot see, mention, or compare against any other customer.
  • The assistant treats data it reads as untrusted input — instructions smuggled into ad names, email subjects or comments cannot redirect it.
  • API keys and credentials are stripped from any answer before it reaches your screen.
  • Every action the assistant takes is recorded in your workspace audit log.

Smarter dismissals

When you dismiss a recommendation, an optional reason picker appears (Not relevant / Wrong timing / Already done / Disagree). The reason is optional — a bare dismiss still works in one click. Picking a reason teaches the assistant which kinds of recommendations to suppress for your account. You can review and reverse anything it has learned from the AI Assistant settings.

onboardingtrial

A useful first session in under five minutes

Sample data on first load, two-question qualify, instant first briefing the moment you connect a channel, source-honest metrics, a five-stage trial email path, and read-only continuity if your trial ends before you've decided.

We rebuilt the trial so a new user can answer one question — "is this product going to be useful for me?" — in under five minutes, without having to connect a single channel first.

What's different

  • A populated workspace from the first paint. Brand-new accounts open on a sample-data dashboard with realistic spend, attribution and recommended actions — no empty states. The moment you connect a real channel, the workspace switches over.
  • Two-question qualify. We replaced the long questionnaire with the two questions that actually shape your future briefings: company name and primary ad platform.
  • Your first briefing the moment you connect. Hooking up your first ad account triggers the first daily briefing right away — no waiting for the next overnight run.
  • Source-honest numbers. Every metric is labelled either platform-reported or pixel-verified, with the gap shown when they disagree. We don't pretend ad-platform numbers and on-site conversions are the same thing.
  • A pixel install wizard with live verification. The wizard knows when your first event lands and confirms it inline.
  • A five-touch trial email path. Welcome, three personalised nudges on days 3, 7 and 12, then a trial-ending note on day 14. Each adapts to where you are in setup, not where the calendar says you should be.
  • Read-only continuity at trial end. If you don't pick a plan in time the workspace goes read-only instead of being shut down — your data and prior briefings stay intact; you can pick a plan later and pick up where you left off.
pagespricingsecurity

Pricing, integrations and security pages are live

New public pages cover how Prooflytics is priced, every integration we support, our security posture, and who's behind the product.

We've published the pages most evaluators ask for, so you can size up Prooflytics on your own time before talking to us.

What's new

  • Pricing — pay-per-service tiers and a bundle option, with a FAQ that answers the seven questions teams ask before they trial.
  • Integrations — a single catalog of every channel and tool we read from, with per-integration detail pages explaining what gets pulled in, what stays in your stack, and the steps to connect.
  • Security — six pillars covering certifications, data handling, encryption, access model, audit log, and how we respond to incidents.
  • About & Contact — the people building the product, our principles, and direct channels for sales, demos, security reviews, and partnerships.

If you've been waiting on a security questionnaire or a clear pricing page before evaluating, both are now public.

onboardingproduct

New onboarding — connect, sync, chat, tour

Four-step setup that mirrors how marketing teams actually evaluate the platform. Connect your channels, watch the first sync, answer four questions to shape your future briefings, take a one-minute tour.

Setup is now four short steps so a new team can get to a useful first session without reading docs.

What you'll see

  1. Connect — pick your ad platforms (Meta and Google get you started; GA4, LinkedIn, TikTok, Shopify and more are optional). Read-only access by default.
  2. Loading — the first sync runs while you wait, with live progress. Skip the wait once enough data has landed.
  3. Setup chat — four questions about your business, decision style, and guardrails. Your answers shape every recommendation the assistant makes from day one.
  4. Tour — a one-minute walkthrough of where your daily brief, action queue, and competitor cards live.

If you'd rather try it before connecting anything, Skip for now lets you go straight to the chat with sample data.

Want changelog updates by email?

Customers get every release note in their weekly briefing. If you're evaluating, drop a line and we'll add you to the public changelog list.

Subscribe