Yazi

Changelog

Everything we ship, in plain language. Updated every week.

20 changes
New feature

Participants can now see how far along they are

Survey questions on WhatsApp now show a running count ("Q1 of Q2", "Q2 of Q2"), and when a survey rolls into an AI interview the count keeps going ("Q3", "Q4") instead of restarting from one. We deliberately don't show a total for the AI-interview part, because the AI often wraps up early, so rather than promising "Q1 of 5" and stopping at three, it just keeps counting honestly. It works across every campaign type, and if you've hidden the counter it stays hidden. Nothing about answers, routing, data or reports changes: this is display only, so people are less likely to drop off wondering how much is left.

New feature

Group recurring-survey results by participant or segment

The Recurring Survey results table (Responses, Table Data) now has a Group by control: None, Segment or Participant. On a recurring or diary study a person answers over many waves, so the flat table ends up with hundreds of rows and one participant's answers scattered across all of them. Grouping folds that into tidy collapsible headers like "Participant X (9)" that you can expand or collapse, so the table is finally scannable. Grouping is a view preference only: your exports and charts still use the full underlying data.

New feature

A translated transcript column for AI interviews

AI-interview Table Data now carries a Translated Transcript column, so interviews run in another language show the translation alongside the original without you exporting and translating by hand.

Improvement

Reporting numbers now agree across every tab

A study's Graph Data, Report and Insights tabs used to show different headline numbers, single-choice answers could add up to more than 100 percent, the Insights text showed stray ** symbols instead of bold, and the raw-responses export couldn't be grouped. All of that is fixed. Single-choice percentages now total exactly 100 percent (multi-select still shows real per-option shares), the report's fieldwork dates, sample size and headline stat match reality with the hero number paired to the caption that describes it, Insights and the exported PowerPoint show proper bold text, the PDF renders cleanly, and the raw-responses CSV/Excel now carries a stable per-interview and per-question id so you can group it by participant or by question.

Improvement

Block routing now works in in-chat surveys too

Routing between blocks used to be a WhatsApp Flow feature only. It now works in in-chat surveys as well, and the rules are more capable: an Always-Go-To rule, multiple conditions combined with AND/OR in a single modal, and loop detection so you can't build a route that circles back on itself. Each Flow-enabled block also gets an eye icon that previews the whole block as a real WhatsApp Flow screen, with an all-at-once versus one-at-a-time toggle. We also fixed the "equals" condition, which could silently produce a rule that never matched.

Improvement

AI interviews always ask your required closing question

You can set a question to be asked at the very end of an AI interview, for example "please share the number for your incentive". The interviewer was sometimes hitting its message limit and ending without ever asking it. It now guarantees any required question is asked before it wraps up, word for word, on the last turn, translated automatically if the interview is running in another language. A genuine "I'm done" from the participant still ends things gracefully, and the study builder now explains that required questions are always asked near the end and lets you reorder them.

Improvement

Trust review is clearer, and now lives in Table Data

The Participants tab now splits the Trust column into a Verdict and a Reason (previously only visible on hover), and when you change a verdict you can add a note that shows under the AI reason with your name and the date. The same trust status and note are now available as columns on the survey and interview Table Data grid, with an "Approved" status filter and a bulk verdict-update popover so you can review and update many rows at once.

Improvement

Broadcasts show the right status

Several broadcast status problems are fixed. Recipients could get stuck on "Pending" forever when a status update from WhatsApp arrived a second before we'd finished writing the message's tracking record; we now write the record as the message is sent and hold any too-early update briefly until it lands. Sends that can never go through because an account is billing-blocked now correctly show as Failed instead of Pending, and recipients left pending are aged to "unconfirmed" after 24 hours. So the dashboard reflects what actually happened.

Improvement

Panel completes from PureSpectrum now register

When someone recruited through PureSpectrum finished a survey, they were marked complete on the panel's side but Yazi never ticked them off, so the recruitment window sat on zero with an empty progress bar even though people had genuinely finished. On the study that flagged this, 20 people had completed and Yazi showed none. That handoff is fixed, and completions are now counted once and only once even if the same message arrives twice.

Improvement

Airtime rewards now work like the other reward types

Airtime rewards now get the same broadcast-selection experience as Tremendous vouchers, and reward confirmations send as an in-window message first, falling back to an approved template once WhatsApp's 24-hour session window closes. Separately, if an organisation doesn't have its own airtime-confirmation template approved with Meta, the confirmation now falls back to a plain WhatsApp text rather than silently never arriving. The reward itself was always delivered; this makes sure the participant always gets told.

Improvement

A cleaner study setup screen

Study settings now live in a floating panel on the right of the Build tab, with a quick switch between Settings and Blocks. Everything sits in the same place for every study, so there's nothing to relearn.

Improvement

Media in results loads faster

Audio, video and picture grids in the qualitative results card now load progressively instead of rendering everything at once, so studies with a lot of media open noticeably quicker.

Improvement

Ask Yazi no longer swallows the questions it drafts

When you asked Ask Yazi to propose a study or survey, it could end with an empty chat bubble under a false "changes applied" banner, dropping the questions you'd asked for. The proposal now renders as text you can read, and proposing a plan is no longer mistaken for a change that was applied.

Improvement

Recurring-survey results table matches the others

The Recurring Survey results table now has the same toolbar as Survey and AI Interview: a show/hide-columns button, a compact Export button, and a Shareable-link button aligned with the rest. While building show/hide columns we also fixed a subtle issue across Survey, AI Interview, Recurring Survey and Multi-Activity where hiding a column could quietly drop it from an export. Hiding a column is now purely a view preference and never changes what's in your download.

Improvement

Security and privacy hardening across the platform

We ran another security pass this week as part of pentest-readiness and shipped a batch of hardening to production. The parts worth knowing about as a client: our AI-interview chat servers now accept only modern encryption (TLS 1.2 and 1.3) and refuse the old, unsafe versions; every backend service now fetches its passwords and API keys from a secure store at runtime rather than holding them in plain configuration; all traffic to the production database is encrypted and the database now sits in a locked-down private network; fonts are served from our own servers instead of a third party; and the production firewall now inspects all traffic with no exceptions. Nothing was breached; these close gaps proactively, with no change to how anything works for you.

Fix

Rewards in local currencies are billed correctly

Rewards paid in a non-US currency (for example R35 of ZAR airtime) were being deducted from your credit balance as if the local-currency number were dollars, so R35 took $35.00 instead of about $2.12. Credit checks and deductions now convert the reward's local-currency value to USD at a live rate before touching your balance, and the participant results table shows the real reward amount rather than the converted figure.

Fix

Hidden phone numbers stay hidden, and shown ones aren't faked

An organisation that had never explicitly set its phone-privacy preference was being treated as "hide numbers", which masked every participant's number and surfaced as garbled fake numbers in the Media Library. Numbers now only hide when an organisation opts in, and the Media Library no longer formats a masked id as a fake phone number.

Fix

You can finish signing up on your phone

When someone created an account on a mobile phone, the welcome screen filled the display and the "Get Started" button was hidden behind the browser's address bar, so new users got stuck partway through signup. The screen now sizes itself to the visible area, so the button always stays in view. Signing up on a desktop was never affected.

Fix

No stray translation columns on single-language studies

Downloading Table Data for a study without translations turned on still included empty "Translation" columns in the export and the on-screen table. Those columns now appear only for studies that actually have translations enabled.

Fix

Broadcasts accept spreadsheets saved with semicolons

A recipient file saved with semicolons between columns (a common Excel regional setting) was read as having no valid phone numbers, so the broadcast failed with a vague error. Uploads now accept any common separator (comma, semicolon, tab, pipe), and when a send genuinely can't go ahead the screen shows the real reason instead of a generic message.

12 changes
New feature

Route between blocks in a WhatsApp Flow survey

Blocks group questions onto a single WhatsApp screen, and you can now set what happens after each screen: if the answer was X, skip ahead, screen the person out, or end the survey. Routing only ever moves forward, which is what WhatsApp allows, so you cannot accidentally build a Flow that Meta rejects. Each block also gets a show-all versus one-at-a-time toggle, so you choose whether the questions on a screen appear together or reveal one after another as the person answers. Grouping questions no longer wipes your existing skip logic, which was an old rough edge.

New feature

Wire up event triggers yourself

When you set up an event-triggered schedule, the summary screen now shows your Configuration ID and Organisation ID with tap-to-copy, and the API returns them too. You can connect your own systems to a Yazi trigger without asking us to look the IDs up for you.

Improvement

One share link, all your results in tabs

Sharing a campaign's results externally used to mean sending up to three separate links: one for Table Data, one for Graph Data, one for Transcripts. It is now a single link that opens one page with tabs for all of them, so your client sees everything in one place. Shared Table Data and Transcript links also used to stop at the first 25 rows. They now return the full result set. Older links still work, and the Copy share link buttons sit exactly where they did.

Improvement

The broadcast dashboard now shows real Started and Completed counts

Started always read 0 on the broadcast dashboard, even when people had genuinely begun the survey, and there was no Completed count at all. Both numbers were being read from WhatsApp's delivery status, which only knows whether a message was sent, delivered, read or accepted. They now come from the survey itself, and there is a new Completed tile alongside them. To be precise about the three: opted in means they accepted the WhatsApp invite, started means they began the survey, completed means they reached the end.

Improvement

Test data now behaves the same way everywhere

Test-simulator responses used to appear in some reporting views and silently vanish from others, so the charts, the table and the headline counts could all disagree while you were checking your setup. There is now one labelled control on a study's Reporting page. Switch it on and test responses appear consistently across the table, the charts, the media library and the response counts. Switch it off and they all disappear together, and the platform remembers your choice per study. Test data stays clearly labelled and can never end up in an export, a report or a shared link.

Improvement

Ask Yazi tells you what it did

When you ask Ask Yazi to make a change, it now shows a summary card at the top of the panel once it is done: "3 of 4 changes applied", with any failures or skipped steps called out, and the full step list if you expand it. It used to just go quiet and you had to ask whether it had worked. The count now reflects real changes only, so read-only steps like searching or reading a report no longer get counted as edits it failed to make.

Improvement

Study Simulations are about twice as fast

A Run Simulation with around 20 synthetic personas used to be slow and could freeze partway through, because only 4 personas ran at a time and the run hit an internal time limit. It now runs 8 at a time, so a 20-persona run finishes in roughly 9 to 10 minutes and completes reliably.

Improvement

Clearer "Screened out" on the Share screen

Participants who were screened out of a survey used to show a half-finished progress bar, which read as though they had dropped off mid-way. They now show a clean "Screened out" bar on both the campaign and study Share screens.

Improvement

Security and privacy hardening across the platform

We ran a full security pass this week and shipped a batch of fixes to production. The ones worth knowing about as a client: access to campaigns, panel campaigns, reports, participant lists and interview transcripts is now checked against the organisation that owns them, so nothing can be reached across organisations; sensitive data such as phone numbers, survey answers and tokens is no longer written to our internal system logs in plain text; our product analytics no longer captures on-screen text or identifiers from research screens; and our core web libraries are on their patched versions. Nothing was breached. This is us closing gaps proactively.

Fix

PDF transcript export now works

Per-respondent PDF transcript export had been failing since it launched, and the two earlier fixes were treating symptoms. The real cause was memory: image-heavy transcripts decode every image at full resolution during the render, which exhausted the export worker. That is fixed and exports run through, faster than before.

Fix

AI chart summaries no longer quote counts that contradict the chart

The AI summary under a chart used to quote a fixed respondent count, such as "5 out of 7", which could disagree with the total shown above it once you hid test data. Summaries now describe findings in words instead of quoting counts. Existing summaries keep their old wording until they next regenerate.

Fix

White-label participants no longer see English or the wrong brand

Three participant-facing surfaces still had English-only text or hard-coded Yazi branding: the in-app AI assistant panel, the WhatsApp survey fallback messages ("you've already completed this", welcome-back, completion), and the AI assistant's action cards. All three now follow the client's own brand and language. The default English experience is unchanged. One related fix, the screening web page, is ready but waiting on its deploy pipeline.

13 changes
New feature

Swahili is now a full platform language

Surveys, interviews and diary studies can run end to end in Swahili. Every participant-facing message, button and prompt is translated, and Swahili now shows up in the language pickers everywhere instead of only in some places. This opens up clean fieldwork in Kenya and the wider East African market. One thing to know: WhatsApp template approval for Swahili still needs to be submitted in Meta Business Manager before templated broadcasts go out in the language.

New feature

Turn AI off per account and per surface

You can now switch AI features off for a specific account, surface by surface. There are 14 toggles covering things like report generation, highlight reels, transcription and image analysis, plus an approval step so a change has to be signed off before it takes effect. This is built for clients whose own governance rules say certain data cannot be processed by AI. When AI is off for an account, those surfaces show a clear disabled state instead of running.

New feature

Send rewards as airtime or store vouchers

Participants can now be rewarded with airtime (via Reloadly) or store vouchers (via Yoyo / wiGroup), on top of the existing options. The reward amount shows in the delivery message so the participant knows exactly what they got. Handy for incentivised recruitment where cash is not the easiest thing to hand out.

New feature

Approve reward payouts before they go out

There is a new Reward Approvals drawer on the Share screen. You can see each pending payout with its delivery status, a per-person reward snapshot and the participant's trust score, then approve or decline before anything is sent. It puts a human check between a completed response and money leaving the account.

New feature

Restrict an API key to specific endpoints

When you create a Connect Gateway API key you can now scope it to specific endpoints instead of giving it full access. There are presets for trigger-only, read-only and full access, plus a custom option, and the limit is enforced at the gateway. Existing keys are untouched and keep working exactly as before.

Improvement

Open a survey with the participant's name

Surveys can now start with the participant's name, for example "Hi Thandi", using a new name variable in piping. Until now only the AI interviewer picked up the name. Worth knowing the name comes from the participant's WhatsApp profile, so it is not guaranteed for every person, and there is a sensible fallback when it is missing.

Improvement

Switching between accounts is now instant

Moving between organisations used to trigger a full page reload that could take up to two minutes. It now does a soft reset with a short loading screen, so the switch feels instant. This mostly helps anyone managing several client accounts from one login.

Improvement

One review step before you publish

All three builders now share a single pre-publish review panel that checks your study and flags anything to fix, replacing the old stack of publish pop-ups. You can also edit the incentive amount and response-quality settings right there before going live.

Improvement

Recurring survey graphs now cover every question type

Graph data on recurring and diary studies used to show only multiple-choice questions. It now includes every question type, so you get the full picture of what is changing over time.

Improvement

Smarter scheduling across timezones

The schedule picker now covers more timezones, shows GMT offsets and defaults to your own timezone, and the schedule tag is easier to find. Fewer chances of a broadcast going out at the wrong local time.

Fix

Flow settings now save reliably on surveys

Flow configuration (the CTA message, button text and welcome message) was in some cases not saving and reverting to English defaults on reload. That is fixed, so what you set is what participants get.

Fix

No more translation prompt on exports with nothing to translate

The "Translate before downloading?" pop-up was appearing on table-data exports even for campaigns that had no translations at all. It now only shows when there is genuinely more than one language in play.

Fix

New-account onboarding and demo restored

Fresh signups were in some cases missing the onboarding wizard and the demo campaigns. That is fixed, so a brand new account lands in the intended first-run experience.

No changes match that.