Everything you need to get the most out of the Survey Automator platform. Browse by category below — click any topic to expand it and find step-by-step guides.
Demo project: https://app.researchautomators.com/#/23947/Survey
This guide explains how to build a single product evaluation survey that can be reused across multiple products — in this case, energy drink brands and flavors. The key mechanism is a hidden ProductID field that is pre-filled via a URL parameter when distributing the survey. Based on that value, dynamic bookmarks automatically display the correct brand name and flavor throughout the survey, so each respondent sees questions tailored to their assigned product without requiring separate surveys.
Create an Open Comment question. Name it ProductID and give it the same ID. This question acts as the carrier for the product code (T01, T02, T03 etc.) that will drive all the dynamic Bookmarks later in the survey.

Step 2.
Create a Single Select question. In this example, we will name it Brand, same goes for the ID.
Enter all the answer alternatives → Settings → Answer block → Create new, and name the answer block (e.g. “Product”).

For each answer alternative in the Brand question, you need to assign a T-code via the Popup text field. This is what links each answer option to a specific product code.
For the first alternative: click the answer’s settings → Edit texts → Add texts → Popup text → enter T01.
Repeat for each subsequent alternative in ascending order: T02, T03, T04, and so on.

Open the Brand question’s settings → Coded open ends → select the ProductID question created in Step 1 (in this example: Q51 ProductID).
This connection means that when the survey detects a T-code in the ProductID field, it will automatically select the matching Brand answer, the one whose Popup text matches that code.

Create a new Single Select question named Flavor. Repeat the same setup as the Brand question: add all flavor alternatives, create an answer block, and activate Coded open ends pointing to the same ProductID question.
Importantly, the Popup text codes must use the same T-values as the Brand question: T01, T02, T03, T04, so that a single ProductID code selects both the correct brand and its corresponding flavor simultaneously.

Create a Header block and write your introductory text. Use a Bookmark in the header that references the Brand question, so the respondent’s brand name is displayed dynamically (e.g. “About your favorite {Brand}“). Add a page break between the Header block and the Brand question.

Create a question where the respondent rates the flavor. Add a Bookmark in the question text that references the Flavor question’s Coded open ends output, so the question reads dynamically (e.g. “How much do you like {Flavor}?“).

Before distributing, verify the bookmark logic works correctly. Open the survey and manually enter T01 in the ProductID field. On the following page, the Brand and Flavor bookmarks should resolve to the first entries in their respective answer blocks — in this example, Monster and Ultra White.


When distributing, enable panel links for the project. The base panel link in this project will look like this:
https://svar.researchautomators.se/?122200824start&XQID=[ID]&XQLANG=m
To pre-assign a specific product to a respondent, append the ProductID parameter to the end of the URL:
https://svar.researchautomators.se/?122200824start&XQID=[ID]&XQLANG=m&Q51=T01
Each T-code maps to a different brand/flavor combination. Send the appropriate link to each respondent group, there is no need to create separate surveys per product.
A question can be displayed based on a participant’s previous responses in the survey or on background data already available about the participant.
How to Add a Condition

Conditions on individual response options or rows in a matrix
You can do the same thing at the detail level. Click the three-dot menu next to a specific response option or row in a matrix question instead of clicking the entire question.

Background data
Conditions can also be based on background data, not just on responses in the survey itself.
Advanced: Conditions as expressions
Each Condition is built using an expression. If you click into the expression field (or work with Error message logic), you can view and edit it directly.
The basic form is {Question}:{Answer}, where the question ID and answer ID are enclosed in curly braces. The expression is true if the participant has selected that specific answer.
Example:
{Fulfilled}:{9} → true if the participant selected answer 9 for the question “Fulfilled”{Fulfilled}:{9} OR {Fulfilled}:{10} OR {Fulfilled}:{11} → true if any of the answers 9, 10, or 11 were selected{Gender}:{2} AND {Important}:{3} → true only if both conditions are met

For matrix questions, you specify a specific row by adding the row number: {Aspects}.1:A5 means answer 5 in row 1 of the Aspects question.
Comparisons and Calculations
Expressions support mathematical and comparison operators, which are useful for open-ended questions with numerical answers:
+, , , />, >=, <, <=, =, <>Example: {Age} >= 18 is true if the participant answered 18 or more to the “Age” question. This can be combined with AND/OR and parentheses just as shown above.

Weighting is a method to improve survey analysis when some groups have too many or too few responses. By applying weights, we ensure the survey results better match the real population and avoid bias in the findings.
Weight your survey data when your sample doesn’t match the population proportions you’re trying to understand. An example:
Your survey has 65% female respondents but the population is 50% female, weighting adjusts this imbalance.
Use weighting when the mismatch between your sample and the target population could affect your conclusions.
Weighting might sound like something only for statisticians, but it’s really quite simple math:
Weight = Target % / Unweighted %
Example:
If your survey has 51.73%: men and 48.27%: women,
but you want a 50/50 split:
50 / 51.73 = 0.966621 (Men's weight factor)
50 / 48.27 = 1.035766 (Women's weight factor)
To weight your survey data:

To create a report using your new weights:
You have two alternatives:
Here’s two examples to help you choose:
Individual proportions – use Alternative 1
(raking)
| Gender | Targets |
| Male | 50% |
| Female | 50% |
| Age Groups | Targets |
| 18-34 | 33% |
| 35-54 | 33% |
| 55+ | 33% |
Combined proportions – use Alternative 2
(cell weighting)
| Gender + Age | Targets |
| Male 18-34 | 16% |
| Female 18-34 | 16% |
| Male 35-54 | 18% |
| Female 35-54 | 19% |
| Male 55+ | 15% |
| Female 55+ | 16% |
You can combine several weight models and use iterative weighting to make all variables fit your targets. This weighting process is called raking and iteratively updates previous weights taking you closer to your targets each time applied.

Conducting a few quality controls helps ensure your weighted survey data remains statistically sound is a good practice:
(Optimally your weighting all responses on all models)
(you don’t want a few responses to have too big an impact)
(you don’t want responses to have to small impact)

Common practice is to only apply weighting to responses with complete data.
Let’s say you weight on Gender and Age you’ll only want to weight responses with answers to both those questions.
You achieve this by setting the same condition on all your weight models. The condition should be defined as having answers to all variables included in the multi variable weight model:

Another alternative would be include missing responses in your weight targets.
Let’s take Gender as an alternative, we could include missing answers like this:
| Gender + Age | Targets |
| Male | 49% |
| Female | 49% |
| Missing | 2% |
Handle this by creating a calculated variable with a Missing alternative and assigning an appropriate target to it in your weight model.
Another weighting option when you have complete combined proportions of your target variables is called cell weighting. (The method is also called “cell-based post-stratification” or “complete post-stratification”.)
Instead of iteratively weighting each variable separately, you weight based on the full cross-tabulation of variables.
Use this method when:
A rule of thumb is to have at least 30 responses per cell. If you have less an option is to merge cells together to bigger groups. Another option is to consider raking (alternative 1).


The process is the same as for a single variable:

When creating a Dashboard Report, multiple crosstabs are automatically generated through our Rule-Based Report system.
A standard crosstab is created by default, and additional ones are generated based on the number of breakdown variables you have added to the Visual comparison section.
This automation ensures that all relevant comparisons are included without having to manually create each crosstab.
To add a variable to compare with in the Dashboard, click on the Edit-button in the bottom-right corner to open up the list. Then click on the 3-dots next to the variable and choose Crosstab Comparison or Visual Comparison.

Creating or customizing a crosstab directly in the Report page is simple and flexible.
To start, open your Report-page and switch the presentation to Table view:
This changes the visualization from a chart or bars view to a crosstab-style data table presentation.
Under the Datatype dropdown, you can select how the data should be displayed:
To define what your crosstab compares, you can make sure that the Crosstab Comparison or Visual Comparison options are selected.
These Auto Variables will automatically make comparisons in your crosstab based on what variables you have added to the comparison list. This can for example be: Gender, age groups or time periods
If you only wish to use specific breakdowns to create comparisons with, you can select those instead of the Auto Variables as well.


A category hierarchy is a structured way of organizing categories into parent–child relationships. Each level represents a layer of specificity, for example, Region → Country → Department → Team.
In Survey Automator, hierarchical categories can be used to export as Multiple Reports. By selecting the parent node as the driver variable, you can automatically generate separate reports for all child nodes, each including comparisons to its parent level.
Hierarchical categories make complex reporting manageable. They allow:
Without hierarchical categories, each level must be handled manually which can increase the risk of mismatched data or inconsistent roll-ups.
Ordinary categories are flat which means each value exists independently. An example of a flat, background variable would be gender or age groups.
Hierarchical categories, by contrast, define a parent–child dependency, where each node “belongs” to a level above it.
For example:
Global
├── Region A
│ ├── Country X
│ │ ├── Department 1
│ │ └── Department 2
│ └── Country Y
└── Region BThis structure enables multi-level aggregation and filtering in reports, which cannot be achieved with standard (flat) categories.
Here is another example of how a hierarchical category tree could look after Categories has been exported as an Excel-file from the Distribute-tab:

And this is an example of a flat category-tree without a properly working top-node:

When a project uses a hierarchy, you enable hierarchical reporting per report/dashboard:
Important details
Each hierarchy must include a top node — this acts as the root of the tree.
Without it, the system cannot aggregate results properly or calculate overall totals.
Tip: Use a neutral label like “All” or “Total” as your top node to make it clear in reports.
After importing or editing your hierarchy:
If your charts or report pages show empty or zero data:
Confirm that the category variable used in your respondent data matches the hierarchy codes exactly.
In Report / Dashboard → Cogwheel (⚙) → Integrity, you can define the smallest base required to produce data or reports.
This means you set a minimum number of responses that must be available for a result to be shown in a report or dashboard.
If you want to copy one specific report page (not the entire report) into another report, you do this from the Page list view using the Duplicate into action.
Survey Automator can flag statistically significant differences in banner and cross-tab tables, so you can see at a glance which results stand out rather than reflecting random sampling variation. This document explains what is tested, how, and how results are displayed.
Significance is calculated for two kinds of values in a table:
For each, Survey Automator compares one figure against a reference figure and asks: is this difference large enough to be unlikely to have arisen by chance?
You choose what each column is compared against:
| Mode | What each column is compared to |
|---|---|
| Total (default) | The overall total (the whole sample) |
| Previous | The adjacent previous column |
In Total mode, each breakdown group is tested against the full population — useful for spotting which subgroups differ from the average respondent. In Previous mode, columns are tested against each other in sequence — useful for tracking changes across waves or ordered groups.
All tests produce a z-score: a measure of how many standard errors a difference is away from zero. A larger absolute z-score means a more surprising difference. The z-score is then compared against a critical threshold tied to your chosen confidence level.
Proportions. The subgroup’s proportion is compared to the total proportion, with the standard error based on the subgroup’s sample size.
Averages. The subgroup’s mean is compared to the total’s mean (a one-tailed test), using the total’s standard deviation and the subgroup’s sample size to form the standard error.
Proportions. The two groups’ proportions are compared using a pooled proportion (combining both groups to estimate the shared variance), with the standard error reflecting both sample sizes.
Averages. The two means are compared using the standard error built from each group’s own standard deviation and sample size. This test only runs when both groups have more than 30 respondents — below that, no significance is calculated, because the test is not reliable on small samples.
You select a confidence level, which sets the threshold a z-score must clear to count as significant. Higher confidence demands a larger difference.
| Confidence level | Threshold (z) |
|---|---|
| 90% | 1.282 |
| 95% | 1.645 |
| 99% | 2.326 |
These are one-tailed thresholds, so the test distinguishes “significantly higher” from “significantly lower” rather than just “different.”
Each tested value gets one of three outcomes:
| Outcome | Meaning | Default color |
|---|---|---|
| ▲ Higher | Significantly above the reference | Blue |
| ▼ Lower | Significantly below the reference | Red |
| (none) | Not significant — no marker | — |
The colors are themeable, so they can be matched to client branding. The same significance marker carries through consistently to every export format — both Excel and PowerPoint reports show the identical highlighting.
In addition to the higher/lower arrows, columns can be compared pairwise, with each column labelled a letter (a, b, c, …). A letter placed on a value means that value is significantly higher than the lettered column — e.g. a “c” on column A reads “A is significantly higher than C.”
This section explains the reasoning behind two methodological choices.
The confidence thresholds above (1.282 / 1.645 / 2.326) are one-tailed. This is the correct choice because every significance mark in the product is directional — an up-arrow claims “higher,” a down-arrow claims “lower,” and an a/b/c letter claims “higher than that column.”
In Total mode, each subgroup is compared against the overall total. The current test answers comparison against the visible total — which has the advantage that the arithmetic matches what is on screen. A vs-Total flag means “differs from the overall benchmark,” and it is a lenient, exploratory comparison — a starting point, not an independent-difference verdict.
Pairwise column comparison runs many more tests than the arrows. Each individual letter is a correct one-tailed test at its stated level, but because so many tests run across a table, some letters will appear by chance alone. The letters are not family-wise corrected, so a table full of letters should be read as the sum of many independent tests, not as one collectively-certain picture.
Correlation tables use a different, dedicated significance test (a t-test) suited to correlation coefficients. This is separate from the proportion and average testing used in standard banner and cross-tab tables.
When you send email campaigns from Survey Automator, you can choose to link a Microsoft or Google account. This means that emails are sent directly from your (or your customer’s) own domain instead of from the platform’s default domain.
The benefits are:
By default, mailings are limited to 12 emails per hour, which is a safety measure to prevent damage to the domain’s reputation.
Going forward, your emails will be sent directly through the selected domain.
You can change the domain you use to send emails from if you want to switch back.

You will receive an email from the@researchautomators.com domain with instructions on how to log in.
Follow these steps:
1. Click on ” Create account” in the email or go to the link:
https://app.researchautomators.com/CoAction/Logon.aspx?action=setpsw
2. Enter the email address you used to register with us:

3. You will then receive a new email with a verification code. Copy and paste it to continue.
Check your spam folder if the email hasn’t arrived within a few minutes

4. Enter the verification code.


5. Set up a verification method. You can link your Microsoft account, BankID, or both. If you choose Microsoft, you can log in immediately; if you choose BankID, simply scan the QR code.

6.
After linking one or both, click Go to system.


7. Now choose how you want to log in, and you’ll be taken directly to the platform.
