Hi @MHScott, great question.
Persist Data writes at the end of an execution. When you invoke a recursive trigger, the next execution starts before the current one finishes, so the persisted data hasn’t been saved yet. That’s why iteration 2 often sees stale data, but iteration 3 and onward usually works (by then, iteration 1 has completed and its data is available).
Instead of using Persist Data, you can pass your variables directly in the recursive trigger’s cursor field and then read them with the Get Recursive Cursor action. In the first iteration, you can set the default cursor value to 0 and add a branch to create your first object. After that, you can embed your variables inside the cursor object and add as many as you need as key‑value pairs. I’m including an example in the screenshots below.
Let me know if that helps.


