
LLM web agents usually follow the ReAct pattern: the model is called again after every browser action, so each click is paid for with a network round trip and with a prompt that has grown since the last one. We study the alternative in which the model writes the whole plan in one call and the steps are executed locally, with a small on-device decision model (Laya, a ModernBERT-large "System-1" model used zero-shot) mapping each step to a page element, judging when asynchronous content has arrived, and checking actions that left the page unchanged. We evaluate on a new benchmark of 200 tasks across seven public websites whose ground truth is scraped from the sites themselves or produced by scripted browser runs, and graded by fixed regular expressions. Every task was run three times under four configurations with the same LLM (DeepSeek v4.1 flash): ReAct, ReAct with a reading and turn budget matched to the plan agent, plan-and-execute with Laya, and an ablation that replaces Laya with word-overlap matching, for 2,400 runs, plus 400 further runs with a second model. Against the budget-matched baseline, planning once is not significantly different on success (88.8% vs 92.0%; paired difference -3.2 points, 95% CI -7.7 to +1.2) while using 83.6% fewer input tokens, 67.3% fewer LLM calls and 80.4% less money, and finishing 4.1x faster. Two negative results accompany that headline. Against the unmatched baseline the plan agent also looks more accurate (+8.2 points, p < 0.001), but the entire gap is an artefact of the baseline's smaller reading window and turn cap. And the neural executor is not significantly better than word-overlap matching (+2.3 points, 95% CI -0.2 to +5.0). A second, cheaper model reproduces the token and call savings and widens the accuracy gap in the plan agent's favour, but not the money saving: in 7.5% of its runs it looped while writing the plan and hit the provider's generation cap. This record contains the paper and the complete study data: the 200 tasks with their ground truth and sources, one graded row per run for all 2,800 runs, the full per-run traces (every prompt, completion, tool result and model decision), the agent code, and the analysis scripts that recompute every number, table and figure from the recorded runs.
