Changelog · Aug 17 – 23 2026 · 9 changes
What shipped the week of Aug 17
Every week we tell you what changed in ioZen, why we did it and what you get out of it. Each change says which plans get it.
Newest first
Change by change
- 7 NEW
- 1 BETTER
- 1 FIXED
- NEW
Conversion delivery failures and Google posting are now visible
The Intake Bot delivery health panel now names why cases have no traffic source, warns when a send job is stuck pending or a loaded pixel is missing its shared event ID, and labels Google Analytics Measurement Protocol rows as posted rather than accepted (a 2xx does not mean the credentials or payload were valid). A conversion that exhausts its QStash retries also sends an error alert.
- NEW
Google Ads offline conversion import
Intake Bots can upload completed cases to Google Ads as offline click conversions using the captured gclid (or gbraid / wbraid) and hashed user data. GA4 Measurement Protocol stays available for analytics events. The two never fire for the same conversion action. Delivery health treats a Google Ads accept as verified and no longer labels Google as accepted-unverified.
- NEW
Traffic sources on Intake Bot analytics
The Intake Bot Analytics tab now groups submissions by last-touch utm_source, utm_campaign, and utm_id, with volume and completion rate per source. Lower-volume sources roll into Other, while cases with no UTM (including WhatsApp and API) remain Unattributed, so the table always adds up.
- NEW
Attribution fields on the public submissions API
GET submission list and detail on the v1 API now return marketing attribution: a nested attribution object (UTMs, click IDs, pixel cookies) plus referrer, landing_page, embed_type, geo, and channel. The same fields the in-app Attribution tab shows.
- NEW
Workspace view of which sources produced cases
A workspace Analytics page now rolls last-touch utm_source, utm_campaign, and utm_id up across every Intake Bot, with meeting counts from lifecycle events and a named reason for every unattributed case (WhatsApp, API, capture off, blocked pixel, or direct/organic). There is no value, CPA, or ROAS column: the product does not hold ad spend, and no purchase emitter exists yet.
- NEW
Delivery health panel for conversion events
Intake Bot marketing settings now show whether conversion events from the last 30 days actually reached each ad platform: accepted, failed and skipped counts per platform, the most recent rejection reason, and how many completed cases produced no conversion event at all. It also reports click ID and pixel cookie coverage, so a pixel that stops loading in the browser is visible without comparing dashboards by hand.
- NEW
File questions with document AI on WhatsApp
Intake Bots on WhatsApp can now collect one document per file question and run AI Document Extraction. The bot acknowledges the file and pauses while it reads, then sends one summary with Yes and Fix options. Yes skips high-confidence extracted child answers. Fix clears those child answers and asks them again while keeping the file and extraction provenance. Low-confidence or failed fields are asked normally, and failed or timed-out extraction skips confirmation. While reading, the bot sends one nudge, then stays silent until resume. Model a front and back document as two fields. Requires Business or Enterprise for WhatsApp and Pro or above for AI Document Extraction. Extraction uses plan AI credits; bot messages use purchased credits.
- BETTER
Usage now shows plan and purchased credits separately
The Usage page now meters plan credits and purchased credits on their own. WhatsApp messages always use purchased credits, and Meta plus bridge fees show as one WhatsApp row. The breakdown matches your billing period, not a calendar month.
What you reported is fixed.
Fewer snags for you and your clients while they're being served.
the fixes count too. they're most of it
TikTok Pixel now loads on published Intake Bot pages