The short answerDo not collect every ChatGPT result first, every Gemini result second, and every Perplexity result last. Treat one prompt and repetition as a block, run every declared engine once inside it, and rotate engine order across blocks so time and operator drift are not assigned to one engine by design.
A plan is not an outcome guaranteeCounterbalancing improves the planned order. It does not make AI answers deterministic, create statistical independence, repair changed prompts or access modes, erase time drift, choose a sample size, or turn a failed run into a confirmed absence.

Block what you can, rotate the engine order, freeze the plan

Match inside prompt blocksEvery prompt-repetition block contains every declared engine once. The prompt and repetition therefore stay adjacent in the planned collection order.
Counterbalance positionRotate engine order across blocks so one engine is not systematically first, last, or immediately after the same engine.
Preserve plan versus executionHash the planned rows before collection. Record failures where they occurred; never silently rebuild the schedule after seeing outcomes.

This tool uses a balanced Latin-square sequence family for engine order, then seed-shuffles engine labels, prompt-repetition blocks, and the sequence rows used in each cycle. A complete cycle has n blocks for an even engine count and 2n blocks for an odd count.

Browser-local execution plan

Generate a frozen prompt-by-engine run order

Use one line per exact prompt and one line per engine or surface. The seed is part of the plan identity; the same normalized inputs and seed reproduce the same rows and digest.

Two to twelve labels. Include product, mode, or surface detail needed to distinguish conditions.
One to one hundred nonblank lines; maximum 1,000 characters per line. IDs P001, P002, and onward follow this supplied order before seeded scheduling.
Protocol declarations
Local processing. Prompts and plan inputs stay in this page. The generator does not call AI models, schedule jobs, store data, or upload anything. The 5,000-run cap protects browser rendering.

Complete the identity, engines, prompts, and planning values, or load a worked example.

What the counterbalancing algorithm does

For n engines, the first sequence alternates from the start and end of the engine list; each next sequence rotates the labels. With an even n, the n sequences balance each engine once in every position and each distinct immediate predecessor once. With an odd n, reversed companion sequences create a 2n-row cycle in which those counts occur twice.

The page first seed-shuffles the supplied engine labels. It separately seed-shuffles prompt-repetition blocks and the sequence-row order inside each cycle. It never splits a prompt block across collection windows. A final incomplete cycle is retained and measured; the page reports its actual maximum position-count and predecessor-count spreads.

Digest boundaryThe SHA-256 input contains algorithm version, normalized plan identity, seed, supplied engine and prompt order, repetition and window settings, declarations, and every planned row. It excludes as-run timestamps and outcomes so the original plan remains a stable reference.

Keep failures visible and changes outside the frozen plan

  1. Download the as-run CSV before collection. Its planned columns are populated; timestamp, status, evidence reference, and note fields are blank.
  2. Execute the exact row order. Open a fresh session where the protocol requires one, preserve the exact prompt, and capture the named engine or surface.
  3. Record the observed state, including failure. A refused, failed, unavailable, or skipped row remains part of the planned denominator record; it does not become confirmed absence.
  4. Do not reshuffle after a result. If a recovery run is justified, add it to a separate deviation or recovery log with its own identity. Do not overwrite the planned row.
  5. Analyze with the correct unit. Counterbalancing controls planned order only. Choose uncertainty, missing-data, repeated-measure, and multiplicity methods separately for the eventual endpoint and decision.
After collectionKeep this blank export beside the completed copy, then use the AI visibility run reconciliation and protocol deviation log to compare planned fields, status coverage, evidence gaps, and timestamp-supported execution order without repairing the source.

Method sources and boundary

These sources support experimental-design structure and transparent measurement. They do not establish that an AI-visibility schedule is representative, adequately powered, unbiased, causal, or decision-grade for a particular business question.

Frequently asked questions

How should I order prompt runs across AI search engines?

Keep every engine inside each prompt-repetition block, rotate the engine order across blocks, and freeze that full plan before collecting or scoring outcomes.

Why not run one engine all the way through before the next?

That assigns early collection time, operator attention, and any short-run drift to the first engine and later conditions to the last. A counterbalanced block plan distributes planned positions instead of building that confound into the schedule.

Why do odd engine counts use twice as many sequence rows?

A single immediate-predecessor-balanced Latin square requires an even condition count. Reversed companion sequences create a complete 2n-row cycle for odd counts.

Can I use a plan with an incomplete cycle?

Yes, but call it incomplete. The tool reports the exact position and predecessor spreads. It does not fabricate extra observations or label a partial cycle perfectly balanced.

Does the seed make AI answers reproducible?

No. It reproduces this page's planned order. Model sampling, retrieval, personalization, platform changes, and time can still change the answers.

Does this generator call AI models or upload prompts?

No. All scheduling, validation, hashing, copying, and export work happens locally in the browser.