For the complete documentation index, see llms.txt. This page is also available as Markdown.

Analysing results

Every dataset you bring into BAI Analytics (a survey, an Excel upload, a connector import, a review-scraper run, a stack of interview recordings or transcripts) gets its own Analysis page. The page is source-agnostic: the same set of tabs, the same AI-driven themes, the same sentiment model, the same Custom Monitoring review and the same export tools work whether you're looking at 200 NPS comments or 5,000 scraped reviews.

This page covers the analysis surface for a single dataset. For the cross-dataset roll-up across a whole project (Grouped Themes, AI Insights across all sources, and scheduled reports), see Feedback Groups. For the inputs that feed it, see Creating a Survey, Uploading an Existing Dataset, Connecting your tools, and Social Listening. If you would rather ask a question than browse, see Ask your feedback.


Where the Analysis page lives

You reach the Analysis page from any dataset card in a Feedback Group:

  • A survey, Open analysis on a published survey.

  • An upload, View analysis on the upload card after processing completes.

  • A connector source, Open analysis on the connector card; updates live as new records sync.

  • A scraping agent's output, Open analysis on the agent's data-source card.

The first screen lists every question in the dataset as a card (choice questions, scales, NPS, open-ended questions) with a collapsible Context Fields section below it for metadata columns. Opening an open-ended question takes you to the four-tab analysis described below.


The four tabs

Tab
What it's for

Overview

Executive summary + headline metrics for the dataset. The first thing every reader sees.

Thematics

What the AI surfaced as recurring themes, with drill-down into representative comments and sub-themes.

Raw Data

Every individual response with search, sentiment filter, and click-through to the full respondent record.

Custom Monitoring

The signals you defined up front (safety, churn, feature request, etc.) matched against this dataset.

A data-source card sits at the top of the Overview tab whenever the dataset came from a connector or a scraper, showing connection status, last/next import timestamps, persisted filters, and a Fetch new data button. For native surveys and uploads the card is hidden so the Overview goes straight to insights.

The same page renders for every source. The only differences you see are source-specific affordances (Build a report and Raw data shortcuts on scraper outputs, Fetch new data on connectors) and which question types the dataset actually contains.

Interview transcripts. When a dataset comes from diarised interviews (audio recordings, Word/PDF transcripts or JSON exports), only what the interviewee says is analysed. The interviewer's questions and preamble are kept out of the analysed text, out of the themes and out of every quote, so a verbatim is always the customer's own words.


Overview tab

Executive summary

A short, AI-generated narrative that reads like a one-paragraph briefing: what the dataset is about, what's emerging, what stands out. It's regenerated whenever you re-run the analysis or significantly change the data. If generation fails (rare, typically a transient processing issue), the tab surfaces an Overview unavailable notice with a Retry overview button instead of pretending nothing happened.

In-depth summary

A Show in-depth toggle expands the summary into a longer multi-paragraph briefing. The first time you click it, BAI Analytics generates it in the background and saves the result, so the next visitor sees it instantly and you can keep navigating while it is produced.

Headline metrics

Two cards side-by-side:

  • Themes: total themes detected, with a sentiment breakdown across positive / neutral / negative.

  • Comments: total open-ended responses analysed, also with a sentiment breakdown.

Each card has a button that drops you directly into the relevant deeper tab (Thematics or Raw Data).

Key insights

A two-column block listing what the AI considered the most positive aspects and the most negative aspects of the dataset, with markdown-rendered context paragraphs. This is what most stakeholders read first, and it's the single block most likely to end up in a screenshot.


Thematics tab

The Thematics tab is where you actually understand what people are saying.

Theme list

A side panel lists every theme the AI identified, sorted by mention count. Each row shows:

  • The theme name (a short, human-readable label).

  • The comment count for that theme.

  • The sentiment level (one of Very positive, Positive, Neutral, Negative, Very negative, or Unsure) colour-coded so you can scan the list visually.

  • A criticality score (low / medium / high / critical) for themes the AI considers operationally important, not just frequent.

  • A consistency indicator on themes whose internal evidence the AI considers contradictory, so you can review them by hand.

Behind the scenes, themes are also checked for mixed membership. When a theme's comments split into two opposed sentiment camps, BAI Analytics re-audits which comments genuinely express the theme and detaches the ones that don't, so a theme's sentiment reflects what it is really about.

Theme drill-down

Selecting a theme opens its detail view:

  • A summary paragraph in plain language, written in the analysis language of the dataset. If a summary ever comes out wrong (for example in the wrong language because the comments behind it were mostly in another one), click Regenerate summary to rewrite just that theme without touching the rest of the analysis.

  • An in-depth summary that you can generate on demand for a deeper read; the result is cached and shared across viewers.

  • Representative quotes: actual respondent comments selected by the AI as illustrative, with their individual sentiment scores.

  • Sub-themes: finer-grained categories within the theme (see below).

  • A comment count with a click-through to the matching slice in Raw Data.

Sub-themes

Themes are intentionally coarse: what's emerging at the topic level. Sub-themes are the finer-grained breakdown. They surface automatically for themes that warrant them, and you can also click Generate sub-themes on any theme to produce a fresh AI-driven set. Sub-themes inherit their parent theme's evidence and let you triage at a granularity that matches your team's response model, where "price" might split into "too high overall", "per-seat licensing", and "hidden costs at renewal".

Every comment in a theme belongs to exactly one sub-theme. Comments the AI could not place in a named sub-theme land in an Others bucket, so the sub-theme counts always add up to the theme's comment count.

Merging themes and sub-themes

When the AI splits one topic into two rows, or two sub-themes overlap, you can fuse them yourself:

  • Themes: open the theme list's Select mode, tick two or more themes, then choose Merge themes. The merged theme holds the union of their comments.

  • Sub-themes: in a theme's linked-comments header, open the 3-dots menu and choose Select, tick two or more sub-themes, then Merge sub-themes. Sub-categories of a monitor merge the same way from the Custom Monitoring tab (Merge sub-categories).

A confirmation dialog states how many items will be merged. You can type a Name for the merged item; leave it blank and BAI Analytics names it automatically. Merging combines the responses and removes the original items, and it cannot be undone.

Select mode also offers Show statistics for the ticked themes (respondents, share of respondents, sentiment, priority, spread, description) with an Export to Excel button. When weighting is active, the statistics and the export say so.

Sentiment levels

The platform uses a six-level sentiment scale consistently across the entire app: Very positive, Positive, Neutral, Negative, Very negative, and Unsure (used when the model can't make a confident call). Every sentiment chip, every breakdown bar, every theme colour uses the same palette.


Raw Data tab

The Raw Data tab is the un-mediated view of every comment.

  • A list of every response in the dataset, with the comment text, its sentiment chip, and any segmentation context.

  • Search by substring within comments.

  • A sentiment filter to narrow down to just the very-negatives, just the very-positives, etc.

  • A Priority sort that surfaces the most action-worthy feedback first. Each comment is scored by the monitors matched on it (you set the weight of each monitor under Configure priority) and the list is ordered high to low, ties broken by worst sentiment. Open a comment to see its priority breakdown: which monitors contributed and their weights.

  • Click any row to open a Respondent answers modal showing every question that respondent answered, plus their metadata fields, useful when you want to understand what else a critical commenter said in the same submission.

  • A Download Data action that exports the dataset to a spreadsheet for offline analysis, sharing, or compliance archiving (see Exports and reporting).

The list updates as you switch between segments elsewhere on the page.

Tip: The Raw Data view adapts to the source. For surveys and uploads it is a straightforward list of responses. For web-scraping agents it appears as a Mentions feed, a social-media-style stream of per-platform cards, where you can open each original item. Replies to social posts are analysed on their own wording, not on the caption of the post they reply to.


Custom Monitoring tab

If your team defined monitors on the dataset's open-ended questions, this tab is where you review what matched.

For each monitor you see:

  • The count of matched comments and a sub-category breakdown.

  • The comment list for each monitor, with the AI's short explanation of why each comment matched.

  • Per-comment actions: mark reviewed, reassign sub-category, dismiss, add note.

  • Segmentation works on matched comments the same way it does on themes and raw data.

Custom Monitoring is enabled per organisation by the BAI Analytics team. If it is not enabled for yours, the tab shows a Not enabled for your organization overlay and the rest of the analysis continues to work normally; contact your BAI Analytics representative to enable it. See Custom Monitoring.


Quantitative analysis

When the dataset contains structured questions (Single Choice, Multiple Choice, Linear Scale, NPS, or any rating column from a connector or scraper) the analysis page renders inline visualisations alongside the qualitative tabs.

Question type
What you see

Single Choice / Multiple Choice

Bar chart with response counts and percentage shares; sortable by frequency or by option.

Linear Scale

Distribution chart across the configured range, with mean and median callouts. Can also display as a star rating if the creator enabled it.

NPS

A dedicated NPS module: score, promoter / passive / detractor split, distribution across the 0 to 10 scale, and trend across cycles where available. Can also display as a star rating.

Every Scale, NPS, Short Answer, and Long/Depth-Text question also shows its own response count next to the question title, so you can see at a glance how much signal backs each one without opening the raw data.

Quantitative visualisations participate in segmentation just like the qualitative tabs. Pick a segment and the charts update for that cohort. The Overview tab stays global, so you always have the full picture as a baseline. Source-side metadata (status, priority, ticket type from a connector; rating, source, country from a scraper) is also available for segmentation, even if there is no formal "question" behind it.

The question card menu

Each question card has a 3-dots menu with actions that apply to that question:

  • Rename the question label.

  • Customize colors on its chart.

  • Change type (uploaded datasets only). If a column was mapped to the wrong type at upload, fix it here instead of re-uploading: a short-answer column that should be analysed as an open question, a metadata column that is really a rating, and so on. Conversions stay within a family (short answer, open question and metadata; single and multiple choice; rating scale and NPS), and the dialog lists what the change affects (a weighting configuration, a metric alert, an evolution widget) before you confirm. Moving a question to metadata sends it to the Context Fields section; moving it out brings it back as a card. Converting to an analysed open question clears that question's results until you re-run the analysis.

  • Compare segments (choice questions, when segmentation is active): see Segmenting your feedback.

  • Download Data for that question.


Weighting your results (redressement)

If your sample doesn't match the population you actually care about, for example you have more responses from one country or customer tier than its real-world share, weighting (also called redressement or post-stratification) corrects for it without collecting more data.

Turning it on

  • On a single dataset: open Add Weighting from the sidebar of the results page. The panel is titled Sample weighting.

  • Across a whole Feedback Group: open Sample weighting from the Evolution trend strip's options menu (see Tracking feedback over time).

Both open the same three-step wizard:

  1. Fields: pick up to four questions or metadata fields to weight by (respondent-list columns, metadata, choice questions, NPS or scale).

  2. Targets: enter the target percentage for each value; targets must sum to 100% per field. BAI Analytics warns you when a target implies an extreme adjustment or when a value has a positive target but no respondents.

  3. Review: before you apply, the wizard computes the resulting weights and shows how many respondents can be weighted, the weight range (for example ×0.8 to ×1.6) and whether the targets can all be met by the current sample. Adjust the targets if they can't.

With one or two fields, each combination of values gets its own weight (the fields are assumed independent). With three or four fields, weights are fitted by raking (iterative proportional fitting): each field's targets are matched exactly, and the per-value weights shown are the fitted factors. Respondents without a value for a chosen field keep a weight of 1.0.

An Enabled toggle on the weighting panel applies or removes weighting immediately, without redoing the wizard. Edit Weighting reopens the wizard; Remove weighting deletes the configuration.

Bringing your own weights

If your weights are computed elsewhere (R, SPSS, a panel provider), click Import weights and upload a .csv or .xlsx file with an id column (user_id, external_id or respondent_id) and a weight column. BAI Analytics checks the file first and reports how many respondents matched, the weight range and the effective sample size before anything is stored. Imported weights become the active weighting method; your configured weighting is kept and can be re-applied later, and Remove imported weights switches back.

Exporting the weights

Export weights downloads a spreadsheet with one row per respondent (including respondents that keep weight 1.0), the weighting diagnostics and the configuration or import provenance. If the dataset has respondent metadata, a column picker lets you add metadata columns (email, customer number, whatever you uploaded) as join keys for matching the weights back to your own file.

What gets reweighted

Weighting adjusts every count and score built from it: response distributions, averages, the NPS score, and in-depth results (theme mentions, sentiment, criticality, and total responses). Representative quotes and AI-written narrative text are not reweighted; they're still drawn from the real, unweighted comments.

Every spreadsheet export states whether its figures are weighted. The theme and monitor statistics export follows the on-screen weighting; the coding matrix export is always built from raw, unweighted counts and says so in its first row.

Weighting and segmentation don't mix

Weighting and segmentation are mutually exclusive on the same view: turning one on pauses the other, with a note explaining why. This is intentional. Weighting corrects the picture as a whole, while segmentation deliberately breaks it apart by cohort; combining them would make the resulting numbers hard to interpret correctly. Remove one to use the other.


Segmentation

Segmentation breaks an analysis apart by who answered. Pick a structured question (country, customer tier, NPS bucket, source platform) and the page splits into one view per value (Germany, France, US…), each with its own themes, sentiment, and Custom Monitoring results. An Overall view is always there as your baseline.

A few things to know:

  • It's a breakdown, not a filter. Segmenting by Country shows you every country side by side, it doesn't hide the others.

  • Add a segment with the Add Segmentation button, or with Add to Filters on a choice question's card. Clicking a chart bar or a theme card does not start a segmentation.

  • The Overview tab stays global on purpose, so you always have the full picture to compare each segment against.

  • Once segmentation is active, choice questions gain a Compare segments table and a details page with statistical significance tests.

For the full walkthrough, see Segmenting your feedback.


AI augmentation

Beyond the always-on AI that drives themes and sentiment, the analysis page offers on-demand AI features:

  • Generate in-depth summary for the dataset overall, when the default executive summary isn't enough for your readers.

  • Retry overview if the initial generation failed, surfaced with a clear error state, never a silent gap.

  • Generate sub-themes within any theme, surfacing finer-grained categories on request.

  • In-depth theme summaries: multi-paragraph narratives per theme, generated once and cached.

  • Regenerate summary on a single theme, to rewrite its short summary in place.

All on-demand AI runs in the background. The button acknowledges your click instantly and the task appears in the Background Tasks panel as Queued until it starts, so you can see where it stands rather than clicking again. Clicking the same button twice does not start a second generation. Your progress is saved, so a page refresh or browser restart in the middle of a long generation won't lose it; you'll see it complete with a toast when it lands.


Cross-source roll-ups

The Analysis page is per-dataset. When you want to look across every dataset in a project (surveys and uploads and connector tickets and scraped reviews together) you go up one level to the Feedback Group page:

  • Grouped Themes group similar themes across every source, so a theme that shows up in customer support tickets and in Trustpilot reviews collapses into one row. Each grouped theme opens a source-by-source view showing how the theme behaves in every source, with the supporting comments and a way back to each source's own Analysis page.

  • AI Insights at the group level produces a plain-language briefing across the whole project.

  • Reports scoped to the group roll every analysis up into a single PDF / HTML / JSON document for stakeholders.

Per-source analysis and cross-source roll-up are designed to be used in concert: the Analysis page is for understanding one input deeply; the Feedback Group view is for understanding the project as a whole.


Exports and reporting

From the Analysis page you can:

  • Download Data: every response, every sentiment label, exported as a spreadsheet for offline use. A column picker lets you keep the default Core columns (comment, sub-theme, sub-category, sentiment, sentiment score, why captured) or add Respondent metadata columns, and choose the Spreadsheet Language.

  • Download coding matrix: a 0/1 matrix mapping every response to its themes, sub-themes, monitors and sub-categories, for teams that code feedback in a spreadsheet. Pick the columns, generate a preview, then download. Columns are ordered alphabetically (themes first, each followed by its sub-themes, then monitors and their sub-categories), headers carry full names, the last row totals each column, and the first row states that the counts are raw and unweighted.

  • Build a report: opens a customisation dialog where you choose which sections (Overview, Thematics, Raw Data) to include, pick the styling, and generate a PDF. The same flow can be scheduled at the Feedback Group level if you need a recurring readout.

  • Per-section export: sections that lend themselves to it (theme statistics, NPS modules, matched comments, segment comparisons) have their own export button at the section level for ad-hoc sharing.

Exports always respect the active segmentation, so an "EU customers, last 30 days" export only contains the matching subset.


Empty and error states

Analysis is robust to incomplete or noisy data, but a few situations show distinct UI:

  • No responses yet: dataset cards show a placeholder; the Analysis link only activates once at least one response has been analysed.

  • Analysis failed: a full-page Alert with a clear retry path; underlying data is preserved so you don't lose anything by retrying.

  • Overview generation failed: the Overview tab shows a soft amber banner and a Retry overview button. The rest of the tabs continue to work.

  • Outdated link: if a shared link points to an analysis that has since been re-run, the page opens the latest analysis and shows a short info banner instead of an error.

  • Feature not enabled: surfaces that depend on an add-on your organisation doesn't have (Custom Monitoring, for example) show a Not enabled for your organization overlay; everything else stays accessible.


Best practices

  • Treat the Overview as your reader's first stop. It's what stakeholders screenshot. If the auto-summary doesn't capture the angle you want, generate the in-depth version once. It persists and serves every viewer afterwards.

  • Use segmentation for comparisons, not filtering. Open the segment picker when you want to compare cohorts against the Overall baseline, and reach for Compare segments when you need the numbers side by side.

  • Use sub-themes when triage diverges. If your team handles every theme the same way, the parent theme is enough. Sub-themes pay off when price, support quality, and onboarding speed go to different owners. Merge the ones that overlap so counts stay meaningful.

  • Fix column types before you share. A mis-mapped upload column is a two-click fix from the question card's 3-dots menu; you don't need to re-upload.

  • For cross-source storytelling, jump up to the Feedback Group view. A single Analysis page is per-dataset; project-level narrative belongs at the group level.

Last updated