The core problem here is a known Copilot Studio limitation Question nodes inside a Loop through a list node don't work reliably for multi-turn conversations.
The loop is designed for data processing, not for pausing execution to wait for user input on each iteration. This is why the Question node is never invoked regardless of the Ask Every Time setting.
Microsoft's own docs confirm this and recommend a different pattern: use a parent topic that manages the loop logic and a child topic that handles the conversation turn (asking the question and collecting the answer), then redirect between them.
try this for your scenario:
1. Keep your current logic to build MissingList and InputList as global variables
2. Instead of looping and asking questions inside the same topic, create a child topic called something like AskMissingField
- Input: the current field key/prompt
- Output: the user's answer
- Inside this topic: show the generated question (from BotPrompt), ask the Question node, return the answer
3. In your main topic, instead of a Loop node with a Question inside:
- Use a counter variable (e.g. Global.CurrentIndex starting at 0)
- Redirect to AskMissingField passing MissingList[CurrentIndex]
- When AskMissingField returns, update InputList with the answer
- Increment the counter
- Use a Condition to check if CurrentIndex < CountRows(MissingList), if yes redirect back to AskMissingField, if no proceed
This recursive redirect pattern reliably resets conversation state between each question and avoids the loop limitation.
Also one thing I noticed from your screenshots the Create Generative Answers node has Activity.Text as input, which means it uses the user's current message. At the point where BotPrompt is being set inside the loop there is no new user message, so that node may be generating answers from stale input. The generative answers node should receive BotPrompt as input, not Activity.Text.
Best regards,
Valantis
✅ If this helped solve your issue, please Accept as Solution so others can find it quickly.
❤️ If it didn’t fully solve it but was still useful, please click “Yes” on “Was this reply helpful?” or leave a Like :).
🏷️ For follow-ups @Valantis.
📝 https://valantisond365.com/