Every recurring feed has to answer one question: where do the values for each new submission come from?
The setting is Input mode: Snapshot (unchecked = Dynamic) in the feed’s submission options.
The Short Version #
| Snapshot (checked) | Dynamic (unchecked) | |
|---|---|---|
| Values come from | What was saved when the series started | The parent entry as it is saved right now |
| Later edits to the parent | Ignored | Used |
| Populate Anything lookups | Never re-evaluated | Re-run on every attempt |
| Behaviour | Predictable and frozen | Current and responsive |
| Best for | Records that must stay identical | Data that should reflect today |
Snapshot Mode #
When the series starts, the saved parent values are captured — ordinary fields and compound inputs alike — and reused for every future submission.
Choose Snapshot when:
- The repeated submission is a fixed record, and drift would be wrong.
- Someone may edit the parent entry for unrelated reasons and you don’t want that to leak into future children.
- The form has no lookups worth refreshing.
What Snapshot does not freeze:
- Date fields you selected under Update Date Field(s) — those still update at execution time.
- Calculation and unique-ID fields — those are still generated by their Gravity Forms integrations on each child.
- Feed settings — activation state and other live settings still apply. A snapshot is a snapshot of inputs, not of the whole feed.
Dynamic Mode #
On every attempt, the plugin reloads the current saved parent entry, seeds Populate Anything dependencies from those values, and evaluates populated fields in dependency order — including dependent and compound fields.
Choose Dynamic when:
- The parent entry gets updated and the newest values should be used.
- A lookup should produce today’s result: current price, current status, current assignee.
- You want an empty lookup to stay empty so a blank-result notification or validation can react to it.
What Dynamic needs from you:
- The lookup’s source value must be saved on the parent entry. If the reference identifier only ever existed in the browser, Dynamic mode has nothing to look up with.
- If a Populate Anything dependency is unavailable, the attempt reports a specific issue rather than guessing. Ordinary forms without Populate Anything simply continue.
Important: an empty lookup result replaces the old value. That is deliberate — it lets a blank result trigger your notification or validation instead of silently reusing stale data.
A Decision Table #
| Your situation | Use |
|---|---|
| Monthly recurring donation record that must not change | Snapshot |
| Daily check of a vehicle’s current mileage band | Dynamic |
| Quarterly report where the contact person may change | Dynamic |
| Compliance record that must match what was originally signed | Snapshot |
| Form with no lookups and an entry nobody edits | Either — Snapshot is the safer default |
Things That Behave the Same Either Way #
| Feature | Behaviour |
|---|---|
| Update Date Field(s) | Selected date fields update at execution, in the schedule’s timezone. |
| Calculations | Recalculated by Gravity Forms on the child entry. |
| Unique ID fields | A new value is generated per child. |
| Recurrence count field | If a Number field supplies the end-condition count, it is set to zero on children so they can’t spawn their own schedules. |
| Notifications, feeds, workflows | All fire, exactly as for a human submission. |
Changing Your Mind Later #
The input mode is a feed setting, and it takes effect through the feed rather than through the schedule snapshot.
- Changing it affects new series.
- Existing series keep the execution choices recorded when they started — applying a saved schedule to existing series copies schedule settings, and deliberately leaves payload choices alone.
If an existing series must switch modes, the clean path is to cancel (or let it complete) and start a fresh series with the corrected feed.
Testing It Before You Commit #
- Create the feed with your chosen mode.
- Submit a parent entry.
- Click Run Next Submission Now.
- Open the child entry and compare it field by field with the parent.
- In Dynamic mode, edit the parent, run again, and confirm the change carried through.
Attempt context reports Populate Anything field IDs, whether the dependency was present, and how many results came back — without ever recording the values themselves.