Julius AI · Survey analysis
Julius AI Survey Analysis: Multiple-Choice Results and Cross-Tabs
Turn a survey export into counts and cross-tabs you can explain. This Julius AI guide works through multiple-choice answers, unanswered questions and group comparisons, with a free CSV, question dictionary and independently calculated answer key.
Documentation-led guide with fictional data. We have not run this example inside Julius. Sources and method. Julius links are affiliate links; we may earn a commission at no extra cost to you.
Separate displayed questions, valid answers and selections.
Fictional survey · Multiple selections allowed · “None” is a valid answer
Prepare the survey export and question dictionary
Keep an unchanged source file. Record the export date, filters and whether your rows represent submissions or distinct people. A response ID identifies a submission; it does not automatically prove that a person responded only once.
Julius lists CSV, Excel and SPSS among its supported file types. Format support does not establish that every question label, missing-value code or display rule will survive an import. Supply a dictionary describing the columns, valid choices, special codes and question-routing rules.
| Source | What the documentation establishes | Check before asking Julius to count |
|---|---|---|
| Google Forms | Responses can be downloaded as CSV or viewed in a linked spreadsheet. | Use the intended response file and collection period. Keep the question wording and routing definitions alongside it. |
| Typeform CSV / XLSX | Multiple-selection choices appear in separate columns. Applied filters or selected responses limit the download. | Map all columns belonging to the question. Confirm the export includes the responses you intend to analyze. |
| Typeform through Google Sheets | Multiple selections appear in one column, separated by commas, rather than the export’s separate choice columns. | Confirm the structure and historical coverage. Do not assume it is identical to a direct CSV export or split arbitrary labels blindly. |
| Qualtrics | Export options control labels, recodes and multi-value columns. CSV/TSV can have several header rows. | Identify the actual first data row, codes and display information. Some automated extracts can remove extra headers. |
Export references: Google Forms responses; Typeform downloads and Sheets integration; Qualtrics dataset structure, export options and automated extraction.
Use non-sensitive inputs. For plan limits, credits and the data-use conditions to check before uploading real responses, see our Julius AI review and privacy discussion.
A worked survey example you can download
The fictional question is: “Which features would you use? Select all that apply: A, B, C, or None.” All choices are shown whenever the question appears. None is exclusive: it cannot be selected with A, B or C.
The file assumes one submission per distinct fictional person. Pro and Starter are fictional survey segments, not Julius subscription plans. The answer key describes this unweighted example; it is not a Julius export or evidence of product accuracy.
Data, definitions and expected results
16 fictional submissions · CSV and dictionary · Answer key · Optional Python checker
What the columns mean
q_features_shown records whether the question appeared. q_features_answered records a valid answer, including an explicit None. In an answered row, each option is 1 if selected and 0 if not. Option cells are blank when there is no valid answer. These definitions belong to this example. Do not impose them on an unrelated export.
Inspect responses.csv using dictionary.csv. Do not modify the source or impute missing choices. Identify the unit of observation, unique submission IDs, display and answer flags, and all columns belonging to the feature question. Flag duplicate IDs, unknown codes, choices recorded for unseen questions, and None combined with another choice. Show the counts for shown-and-answered, shown-but-unanswered, and not-shown records. Explain any ambiguity before calculating percentages.
These are proposed instructions, not a recorded Julius session. Its documentation describes code-based tools and inspectable steps. Use that visibility to review the rules implemented for your file.
Separate unanswered questions from questions never shown
A blank, zero and explicit None can represent different things. Preserve their definitions before cleaning. For this question, the reference file reconciles as follows:
| Status | Count | Treatment in this example |
|---|---|---|
| Shown and answered | 10 | Valid-answer base, including 2 explicit None answers. |
| Shown, unanswered | 2 | Included in the 12 shown the question, excluded from the 10 valid answers. |
| Not shown | 4 | Excluded from both question bases. |
| All submissions | 16 | 10 + 2 + 4. This is not the valid-answer base. |
“None” is an answer, not missing data. Dropping those two records would shrink the valid base from 10 to 8 and inflate A from 60% to 75%. Neither a zero-filled blank nor automatic deletion is an appropriate substitute for reading the dictionary.
What if the export contains only six blanks?
Our flags identify two unanswered and four unseen records. Remove those flags and the six blank choice rows alone cannot reveal that split. Request the missing display information or report the limitation. An AI cannot recover an unrecorded distinction just by analyzing harder.
Qualtrics documents an optional, customizable recode for questions seen but unanswered. Without that option, unanswered questions can remain blank. Special codes therefore depend on the export settings: Qualtrics export options.
These are question-level bases. They do not establish the survey’s overall response rate: that would also require a defined population invited or eligible to participate.
Count responses and selections separately
Ask for the number of valid respondents choosing each option, then divide by the agreed valid-answer base. In this example, each option uses the same base of 10.
| Option | People selecting | Valid-answer base | Percentage |
|---|---|---|---|
| A | 6 | 10 | 60% |
| B | 5 | 10 | 50% |
| C | 4 | 10 | 40% |
| None | 2 | 10 | 20% |
Why do the percentages add up to 170%?
Ten people made 17 selections. A person can contribute to several options, so percentages of people do not have to sum to 100%. Keep that explanation beside the table. For this question, a bar chart can show the option percentages without implying that the choices form exclusive pieces of one whole.
The same six A selections can produce four different percentages
| What you want to describe | Calculation | A result |
|---|---|---|
| Valid answers choosing A | 6 / 10 | 60% |
| People shown the question who chose A | 6 / 12 | 50% |
| All fictional submissions choosing A | 6 / 16 | 37.5% |
| Share of selections attributed to A | 6 / 17 | About 35.3% |
If you reshape the data to one row per selection, the 10 valid response rows become 17 rows. Normalizing those rows gives shares of selections. To report the proportion of respondents, retain the response identifiers and the appropriate respondent base.
Also distinguish A or B from adding their percentages. Seven people selected at least one of them: 7/10 = 70%. Four selected both. Adding 60% and 50% counts those four twice.
Our common base assumes every option was visible to the same eligible people. Choice-level display logic can require a different base for each option. Qualtrics documents this distinction in its crosstabs guidance.
Compare groups with counts and explicit bases
The two segments have different numbers of valid answers. The useful comparison is the count choosing A divided by each segment’s valid base.
| Segment | Choosing A | Valid answers | Within-segment percentage |
|---|---|---|---|
| Pro | 3 | 4 | 75% |
| Starter | 3 | 6 | 50% |
| All valid answers | 6 | 10 | 60% |
Both groups contain three people choosing A. Their percentages differ because their bases differ. The 25-percentage-point gap describes this tiny fictional dataset; it does not establish a meaningful population difference or statistical significance.
“Within this group” and “among people choosing A” are different questions
Among the four valid Pro responses, three chose A: 75%. Among the six valid responses choosing A, three came from Pro: 50%. Keep the wording with the result rather than labeling both numbers simply “A percentage.”
Row and column percentages are useful only after you know which variable occupies each axis and which records are included. UCLA explains the corresponding row, column and overall percentage bases.
For multiple selections, inspect the counting unit again. Pro’s three A selections are 3/4 of valid Pro respondents, but 3/8 of all Pro selections: 75% versus 37.5%. A neatly normalized cross-tab can answer the wrong question if its rows represent selections rather than people.
For the feature question, use q_features_shown=1 and q_features_answered=1 as the valid-response filter. Keep explicit None answers in the base. Return each option’s selected count, valid base and percentage overall and by segment. Count each submission at most once for an option. Separately calculate A or B and A and B using submission IDs. Explain the difference between respondent percentages and selection shares. Show the implemented rules and any excluded or contradictory records before interpreting group differences.
A real survey may need weights, a sampling design or specialist statistical review. This example is an unweighted descriptive exercise. It does not infer that voluntary respondents represent every customer.
Export the survey table with its bases and exclusions
Request a table that keeps the definition attached to the number. Suggested columns are question, option, segment, selected_count, base_count, percent and exclusion_rule. This is our proposed output structure, not an official Julius template.
- Inspect the calculation table. Compare the 10 valid answers, A’s count of 6 and the group bases of 4 and 6 with the answer key. Review the implemented code and any cleaning decisions.
- Export the dataframe as CSV. Julius documents an export button in Data Explorer. Ask for missing definition columns before downloading.
- Open the exported file. Verify counts, labels, bases and rounding. Keep the original input, dictionary and analysis rules with it. A readable table in the conversation is not proof that every field survived export.
The download kit contains an expected-results JSON and a small optional Python checker. They let you recalculate the supplied CSV independently. They do not establish what Julius will return for another survey.
If your immediate decision is which tool to use, our Julius AI vs ChatGPT for Excel comparison covers that choice. If the checked survey results later need slides, continue with our Excel-to-PowerPoint workflow guide.
Start with the reference survey
Import the CSV and dictionary, confirm the counting rules, then compare the returned table with the answer key.
Sources and method
Official product and survey-export documentation checked October 29, 2026. This is a documentary guide, not a hands-on Julius test. The fictional data, proposed prompts, counting rules and expected results were created for this article. Reference arithmetic was checked independently against the supplied response records.
Julius: the documented file and export workflow
- AI Report Generator — documented survey distributions and cross-tabs.
- Files — supported input formats.
- Tools & capabilities — code tools and inspecting the work.
- Data Explorer — table inspection and dataframe export to CSV.
Export structure and response definitions
- Google Forms: view and manage responses — response files and linked spreadsheets.
- Typeform: export your responses — selection, filters and multiple-choice columns.
- Typeform: Google Sheets integration FAQ — the alternative structure and historical-transfer conditions.
- Qualtrics: understanding your dataset — headers and response metadata.
- Qualtrics: data export options — values, labels and codes for seen-but-unanswered questions.
- Qualtrics: extract responses from a survey task — optional removal of additional header rows.
Cross-tabs and percentage bases
- Qualtrics: crosstabs overview — denominators affected by choice display logic.
- UCLA: interpreting CROSSTABS — row, column and total percentages.
Product access and documentation can change. Use the linked source for the capability it documents and the reference files for this example’s arithmetic.