Carry forward reuses answer choices from an earlier question in a later one. Piping inserts dynamic values into question text and answer options so each respondent sees personalized wording.
Both features build on answers and variables you already collect. For the full logic toolkit, see Logic, Flow & Conditions.
Carry forward#
Carry forward lets you reuse answer choices from an earlier question in a later one.
Example: Ask "Which of these brands have you heard of?" (multiple choice), then carry forward only the selected brands into a follow-up question like "Which of these brands have you used in the past month?".
Setting it up (step by step)#
You set carry forward up on the later question — the one you want to fill — not on the source.
- Select the later question and open its Properties panel.
- In the Carry Forward section, click Add.
- Carry forward from — choose the earlier question whose answers you want to reuse. Only questions that come before this one and that have choices are listed, so a source that would come too late can't be picked.
- What to carry forward — pick a mode (the full list is below). Some modes reveal one extra input — a choice set, a column, or a number — to narrow what carries.
- Click Confirm. The carried options appear on the question marked read-only with a double-arrow icon; your own fixed options (if any) stay editable alongside them.
You can review or change it anytime from the same Carry Forward section. The builder also writes a plain-language summary onto the question card — for example, "Carries the choices they selected from Q1" — so you can check what will carry at a glance without reopening the dialog.
Tip: The Learn more link at the top of the Carry Forward dialog brings you straight to this guide whenever you need it.
Options for carry forward#
Carry forward has 16 modes in total. Which ones the dialog offers depends on the source question's type — a plain choice question exposes the selection modes, a ranking question adds the rank modes, and a matrix question adds the row modes.
A Pick, Group & Rank question is not offered as a source for carry forward, piping or loops yet. You can still carry choices forward into its items.
A Falling Price question is not offered as a source for carry forward or loops: it saves a price for every product it showed, $0.00 when the product was not bought, so "selected" would mean every product shown. You cannot carry choices into it either, because each product needs its own image, size and Client setting.
All modes at a glance#
| Mode (as shown in the dialog) | Offered when the source is… | What it carries |
|---|---|---|
| Selected Choices¹ | any source | only what the respondent picked |
| Displayed Choices¹ | any source | everything the respondent saw (selected or not) |
| Not Displayed Choices¹ | any source | the options that were hidden from this respondent |
| Unselected Choices¹ | any source | what the respondent saw but did not pick |
| All - Displayed & Hidden | any source | every option on the source question |
| Answer Is One Of | choice / matrix-column sources | the selected options that are in a set you pick |
| Answer Is NOT One Of | choice / matrix-column sources | the selected options that are not in a set you pick |
| Entered Text | a source with an "Allow text entry" choice | the free text the respondent typed into an "Other"-style option |
| Rank position equals | Ranking or MaxDiff | the single item at an exact rank position |
| Rank in top N | Ranking or MaxDiff | the top N ranked items |
| Rank N or lower | Ranking or MaxDiff | items ranked at position N and below |
| Rows Where Answer Equals | Matrix (Rows) | rows answered with a specific column |
| Rows Where Answer Not Equals | Matrix (Rows) | rows the respondent saw but did not answer with that column |
| Rows Where Answer In Set | Matrix (Rows) | rows answered with any column in a set |
| Rows Where Answer <= | Matrix (Rows) | rows whose numeric cell value is at or below a threshold |
| Rows Where Answer >= | Matrix (Rows) | rows whose numeric cell value is at or above a threshold |
¹ These four selection modes take the source's own unit noun in the dialog: Selected Choices for a choice source, Selected Rows for a matrix-rows source, Selected Items for a ranking source. The behavior is identical; only the noun changes to match what you're carrying.
Each mode is explained in more detail below. The everyday choice-question modes:
- Selected Choices — only what the respondent picked.
- Displayed Choices — everything the respondent saw, whether or not they selected it.
- Not Displayed Choices — the options that were hidden from this respondent.
- Unselected Choices — everything the respondent saw but did not pick (options they were never shown are not carried).
- All - Displayed & Hidden — every choice on the source question.
- Answer Is One Of — the selected choices that are in a set you pick.
- Answer Is NOT One Of — the selected choices that are not in a set you pick.
- Entered Text — the text the respondent typed into an "Other" style choice.
This saves you from duplicating long option lists and keeps the survey feeling relevant to each respondent.
To carry the free text a respondent typed into an "Other / please specify" option, use the Entered Text mode above. A carried choice that had "Allow text entry" on a choice source keeps its own text box on the follow-up question automatically.
Sequential Select sources work differently — and more simply. When the source is a Sequential Select whose brand is marked Allow Text Input, you do not need a special mode or piping field: carrying it forward or piping it gives you what the respondent typed, automatically. So a Sequential Select brand labelled "Another brand, please specify" carries into the next question as "Sensodyne Pronamel" — on any follow-up question type, including a Single or Multiple Choice one, and the respondent is not asked to type it again. The follow-up's answer is shown the same way afterwards: the response detail view, the summary email and web-service payloads name the carried choice "Sensodyne Pronamel" too. Choice questions keep their existing behaviour, where the label is the default and you opt into the typed text with Entered Text (carry forward) or the Other (Please Specify): Text Entry piping field.
The display-based modes above depend on the respondent having seen the source question. If the source question was never shown to them — because display logic or an earlier skip removed it — nothing is carried, and the follow-up question is skipped.
Answer Is One Of / Answer Is NOT One Of#
These two modes work like the is one of / is not one of conditions in display logic, but for carry forward. Pick a set of the source question's choices in the dialog (multi-select chips), and the carried list is the respondent's selected choices filtered against your set:
| Mode | What it carries |
|---|---|
| Answer Is One Of | Selected choices that are in the set you picked |
| Answer Is NOT One Of | Selected choices that are not in the set you picked |
Example: Q1 asks "Which of these brands have you heard of?" with options including "None of the above". Carry forward with Answer Is NOT One Of → "None of the above" into Q2, so the follow-up "Which have you used?" lists the brands the respondent knows — without the "None of the above" noise. Or use Answer Is One Of with a curated subset to follow up only on your focus brands, even when respondents select others too.
If the respondent hasn't answered the source question yet, no choices are carried (same as Selected Choices). At least one choice must be picked in the set before the configuration can be saved.
After saving, the carry-forward banner on the question card describes the configuration in plain language, including the choices you picked (for example, "from Q1 — their selections, limited to Apple, Banana"), so you can review it at a glance without reopening the dialog.
Additional choices#
When carry forward is active, you can still add your own choices alongside the carried ones. For example, carry forward selected brands from Q1, then add a fixed "None of the above" option at the end. In the builder, carried choices show a double-arrow icon and are read-only, while additional choices are fully editable.
Order of the carried choices#
Carried choices appear in the order the respondent actually saw them in the source question — so if the source question shuffles its options, the follow-up matches what that respondent saw rather than the authored order. If you turn on randomization for the follow-up question itself, that takes over and shuffles the list as usual.
To show fewer choices, pick a narrower mode (for example Rank in top N from a ranking source, or Answer Is One Of) rather than trying to trim the list afterwards.
When nothing is carried#
If the filter leaves no choices — for example the respondent selected nothing in the source question — the follow-up question is skipped entirely. Respondents never see an empty question, and it never blocks them from continuing. This also means you usually do not need to add display logic to "protect" a carry-forward question.
Keeping carried choices up to date#
Carried choices always reflect the source question's current wording and images, so editing a choice in the source updates it everywhere it is carried. Recode values for export are kept per question, so the same choice text can be coded differently in the source and the follow-up.
Ranking-source filtering (carry into any target)#
When the source question is a Ranking question, three additional filter modes become available — so you can carry forward only certain positions from a ranking into another question:
| Mode | What it carries |
|---|---|
| Rank position equals | The single item at an exact rank position (for example, rank 1 = the respondent's top pick) |
| Rank in top N | The top N ranked items (for example, top 3) |
| Rank N or lower | Items starting at rank N and going down (for example, everything ranked 3 or later) |
Each mode shows a contextual numeric input so you can set the exact position or N value. Items the respondent did not rank are excluded.
Example: A ranking question asks respondents to order 10 features. Set a follow-up single-choice question to carry forward Rank in top N with N = 3 from the ranking, so each respondent only sees a detailed follow-up on their three most-preferred features.
Carrying forward from a MaxDiff question#
A MaxDiff question can be the source too. Its items are carried in that respondent's preference order, worked out from their own picks: each item scores +1 every time it was picked Best and −1 every time it was picked Worst, and the highest score comes first. Every mode carries in that order, and the three rank modes above work exactly as for a Ranking question, so Rank in top N with N = 3 carries the respondent's three most-preferred items.
- Ties (items with the same score, common when there are many items and few screens) are put in a random order, so no item is favoured just because of where it sits in the item list. The order is fixed for each respondent: going Back and Next, or leaving and resuming the survey, shows the same order. In Preview, Restart counts as a new respondent and can reshuffle ties.
- Selected Items carries the items the respondent picked as Best at least once.
- When the respondent moves on from the MaxDiff, their order is saved with their answer, so it stays exactly as they saw it even if the item list is edited later. It is used only inside the survey: MaxDiff charts, analysis and data exports are unchanged and do not show it.
Carrying forward from a Simplified Shelf Choice question#
A Simplified Shelf Choice shelf stores a number for every product. When it is the source, a product counts as "selected" only if the respondent bought it (a quantity of 1 or more), so you can carry the bought products into a follow-up question. Products that were shown but not bought, and products that were not on the shelf, are not carried.
The other modes use the shelf's own record of what each respondent saw: Displayed Choices carries the products that were on their shelf, Not Displayed Choices the products that were not, and Unselected Choices the products that were on their shelf but not bought. Products that were never shown are never counted as unselected. In piping, Unselected Choices from a shelf likewise lists only the shown, not-bought products.
A shelf cannot be a carry-forward target: every product needs its own price, picture and shelf settings, which a carried choice does not have.
Ranking and Distribution questions as carry-forward targets#
You can also carry choices into a ranking or distribution question. When the target is a ranking or distribution question, the carried choices flow into the target's items list (not answer options) — so respondents end up with a ranking/distribution list built dynamically from an earlier question.
Example: Ask "Which of these 10 brands do you consider?" (multiple choice). Then carry the selected brands into a follow-up ranking question: "Now rank the brands you consider, from most to least preferred." — each respondent ranks only the brands they actually picked.
Skipping a ranking with only one item. A respondent who picked a single brand has nothing to rank. To skip the ranking for them, select the ranking question, open the Validation tab and turn on Auto-answer if only one item. When only one item is left, that item is recorded as rank 1 and the respondent moves straight on. This works for the standard Ranking question and for the Tap & Drag Rank and Group Rank interfaces, and it is off by default, so existing ranking questions are unchanged.
Filling a matrix's rows and columns#
A matrix (grid) question has two axes, and you can carry forward into each one independently:
- Carry Forward Rows fills the statements down the left side.
- Carry Forward Columns fills the scale points across the top.
These are two separate controls in the Properties panel, each with its own source question and its own mode. That means you can, for example, carry the brands a respondent selected in Q1 into the rows, and — from a different question — the options they chose into the columns, in the same matrix. Set up whichever axis you need (or both); each shows its own summary line so you can tell them apart.
Some custom matrix interfaces have a fixed column structure required by the widget — for those, only the rows axis can be carried, and the columns control explains why it is unavailable.
A Jobs To Be Done Sequential Select can carry forward its rows (the concepts) but not its columns. Each column is a slide the respondent answers by tapping one of that column's own scale options, and a carried column can't bring scale options with it. Hover the info icon next to Columns to see this in the builder.
Matrix row-level filtering#
When carrying forward rows from a matrix question, additional filtering modes let you carry only the rows that match specific criteria based on the respondent's answers:
| Mode | What it carries |
|---|---|
| Rows Where Answer Equals | Rows where the respondent selected a specific column |
| Rows Where Answer Not Equals | Rows the respondent saw but did NOT select that column for (including rows they left blank). Rows they were never shown are not carried. |
| Rows Where Answer In Set | Rows where the answer matches any column in a set |
| Rows Where Answer <= | Rows where the numeric cell value is at or below a threshold |
| Rows Where Answer >= | Rows where the numeric cell value is at or above a threshold |
The carry forward dialog shows these modes automatically when you select a matrix question as the source with "Rows" as the field. Filter inputs appear based on the mode — a column picker, multi-select chips, or a numeric input.
Example: A matrix asks "Rate each department" with columns 1-5. You can carry forward only the rows where the rating was <= 2 (Rows Where Answer <=, threshold 2) into a follow-up question asking "What could these departments improve?".
Tip: Pair carry forward with display logic so follow-up questions only appear when the source question was answered in a meaningful way.
Piping#
Piping lets you insert dynamic values into question text and answer options. Instead of writing generic text, you can personalize it based on earlier answers.
What you can pipe#
- A previous answer — "You said you prefer {{Q2_Answer}}. Tell us more about why."
- A previous question's text — Reference the wording of an earlier question.
- A global variable — Insert values like
{{CustomerSegment}}or{{LoopItem}}.
Piping works in the builder preview and in the live survey, so you can test it before publishing.
How piped text references work#
When you insert a piped text reference using the piping menu, the system uses the question's internal ID (QID) — not the visible question number. For example, a token like ${q://QID1/SelectedValue} references question QID1 regardless of what its display number is.
This means you can safely rename question numbers (e.g. change Q1 to Demographics1) without breaking any piped text. The internal QID never changes.
| Token example | What it inserts |
|---|---|
${q://QID1/SelectedValue} | The respondent's answer to QID1 |
${q://QID1/SelectedValueImage} | The image of the selected answer (if available) |
${q://QID1/QuestionText} | The text of question QID1 |
${q://QID1/QuestionImage} | The image embedded in the question |
${q://QID1/SelectedChoices} | All selected choices from QID1 (comma-separated) |
${q://QID1/SelectedChoicesImage} | Images of all selected choices (multi-select) |
${gv://Field/CustomerName} | The value of global variable "CustomerName" |
${lm://Field/1} | Current loop item name (inside a looped section) |
If a referenced question hasn't been answered yet, the token resolves to blank — or you can set a fallback value using the syntax ${q://QID1/SelectedValue|fallback:N/A}.
Piping a MaxDiff's ranked items#
A MaxDiff question can be piped the same way as a Ranking question, in that respondent's preference order (the same order carry forward and logic conditions use: the order saved with their answer, or, before it is saved, Best +1 / Worst −1 worked out from their picks). In the piping menu, pick the MaxDiff and choose:
| Option | What it inserts |
|---|---|
| Best (Lowest) Ranked Item | The respondent's most-preferred item |
| Item Ranked # | The item at the rank you pick (1 = most preferred) |
| Items Ranked ≤ # / Items Ranked ≥ # | The items at or above / at or below that rank, in rank order |
| Selected Choices | The items the respondent picked as Best at least once, in rank order |
| Unselected Choices | The items they never picked as Best, in rank order |
| Selected Choices Count | How many items they picked as Best |
MaxDiff pipes insert the item text only. A MaxDiff is not offered when you pipe into an image field.
Piping images from earlier answers#
When a choice question has images, you can pipe the image the respondent selected instead of (or alongside) the text label. This is useful for Guided Story plugins and other image-driven flows.
| Token | What it inserts | When to use |
|---|---|---|
${q://QID1/SelectedValueImage} | The image of the selected answer | When you need to show the image the respondent chose |
${q://QID1/SelectedChoicesImage} | Images of all selected answers (multi-select) | When piping multiple selections into an image field |
${q://QID1/QuestionImage} | The image embedded in the question itself | When you need the image from the question text |
How it works: If the selected answer has an image, the token resolves to that image. If not, it falls back to the answer text. The piping menu automatically detects which questions have images and offers the image-variant tokens when relevant.
If the answer has no image and you had written the token inside an image slot, nothing is shown — the image is left out rather than displayed as a broken picture.
Piping an image out of a grid#
A grid (matrix) question needs a little more care, because it has two axes and you can pipe from either one. Each choice gives you the opposite axis:
| What you pick in the menu | What gets piped |
|---|---|
| By Row → a row → Selected Choice | the column that row was placed in |
| By Row → a row → Unselected Choice | the columns that row was not placed in |
| By Column → a column → Selected Choice | the rows placed in that column |
| By Column → a column → Unselected Choice | the rows not placed in that column |
| By Row → a row → This row's image | that row's own picture, whatever the respondent answered |
Selected and Unselected are always two halves of the same question, so they name the same side of the grid. If Brand 1 went into Column 1, then By Column → Column 1 → Selected Choice gives you "Brand 1" and Unselected Choice gives you every other brand. A row nobody answered counts as not placed — so before anyone answers, Unselected Choice lists them all.
In most grids the pictures live on the rows — the brands, packs or concepts you are asking about — while the columns are plain text prompts. So when you want the image of what the respondent picked, choose By Column, pick the column, then Selected Choice, and set Pipe as to Image URL or Image HTML.
Choosing By Row in that situation gives you the column instead, and since a text prompt has no picture, you get the column's wording rather than an image. The menu spells out which axis each option resolves to, so check that line if you are unsure.
When the picture you want is one you put on a particular row yourself — always the same picture, no matter what anyone answers — use This row's image instead. It appears under a row or column that has an image, and it works even if the respondent never reaches that question.
Pipe as stays on screen for the whole journey, including the last step, so you can set the format at any point before you insert.
When there is no picture, you get the wording instead. That reads fine in a sentence. The one place it would not is inside an image you placed yourself — there the image is simply left out rather than showing a broken-image icon.
If several answers come back at once — say three brands landed in the column you piped from — the Image URL format shows the first one that has a picture, because an image can only have one address. Use Image HTML if you want all of them.
For loop-specific tokens (${lm://...}), see Randomization & section loops. For global variables used in piping, see Flow editor — Global variables.
Related guides#
Was this page helpful?