> ## Documentation Index
> Fetch the complete documentation index at: https://velurahq.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Bulk execution patterns for content operations at scale

> Patterns for running VeluraHQ Sheets at scale: bulk content refreshes, programmatic page generation, quality scoring, and CMS publishing in one pipeline.

Bulk execution in VeluraHQ means running the same workflow across hundreds or thousands of inputs without rebuilding the pipeline each time. Sheets is the execution surface; Workflows and SuperBlocks provide the logic. This page covers the patterns for doing this effectively at scale — from setting up your first bulk refresh to governing quality across thousands of programmatic pages.

## Pattern 1: Bulk content refresh

Use this pattern to recover decaying pages at scale. Start from your existing performance data and move straight into execution without manual context-gathering.

<Steps>
  <Step title="Surface your candidates in Pages">
    Go to **Pages** and apply the **Decaying traffic** filter to surface URLs where clicks or rankings are trending downward. You can combine this with an AI visibility filter to prioritize pages also losing citations.
  </Step>

  <Step title="Send URLs to a Sheet">
    Select all filtered URLs and click **Send to Sheet**. VeluraHQ creates a new Sheet pre-populated with those URLs and their performance metadata — no CSV export needed.
  </Step>

  <Step title="Add a Deep Refresh workflow column">
    Click the **+** column header, choose **Workflow**, and select your Deep Refresh workflow. Map the URL column to the workflow's `page_url` input field.
  </Step>

  <Step title="Add a CMS Output column">
    Add a second Workflow column configured to push approved drafts to your CMS — Webflow or WordPress. This column activates only after a row clears review, so no draft publishes automatically.
  </Step>

  <Step title="Set your quality threshold and review gate">
    In the workflow column settings, configure the quality score threshold that triggers a human review hold. Rows above the threshold pass through; rows below land in the **Needs Review** queue for manual inspection.
  </Step>

  <Step title="Run all rows">
    Click **Run all**. Monitor batch progress in the progress bar and the Run activity panel. When the batch completes, open the **Needs review** filter to process gated rows.
  </Step>

  <Step title="Approve and publish">
    Bulk-approve rows that meet your quality bar. Handle exceptions individually — inspect the per-row log, adjust the content or inputs, and re-run the row. Approved rows push directly to your CMS through the output column.
  </Step>
</Steps>

## Pattern 2: Programmatic page generation

Use this pattern to launch templated content — comparison pages, glossary entries, location pages, tool pages — at scale from structured inputs.

<Steps>
  <Step title="Prepare your structured input CSV">
    Build a CSV with one row per page and a column for each template variable: `topic`, `target_keyword`, `template_type`, and `target_url_slug`. Clean, consistent column names make input mapping easier in the next step.
  </Step>

  <Step title="Import the CSV into a new Sheet">
    Go to **Sheets**, create a new Sheet, and use **Import CSV** to load your file. Verify the column headers and row count before proceeding.
  </Step>

  <Step title="Add a template workflow column">
    Click **+** to add a Workflow column and select your page generation workflow. Map each workflow input to the corresponding Sheet column — for example, map the `target_keyword` column to the workflow's keyword input.
  </Step>

  <Step title="Add a Quality Score column">
    Add a SuperBlock column using the **AEO Quality Score** SuperBlock. This column runs automatically after the generation step and attaches a score to each row, measuring brand alignment, structure, and citation readiness.
  </Step>

  <Step title="Run all rows and triage by score">
    Click **Run all**. Once the batch completes, sort by quality score. Bulk-approve rows above your threshold; open the per-row log for rows below threshold to diagnose and fix the issue before re-running.
  </Step>

  <Step title="Publish approved rows to your CMS">
    Select all approved rows and use **Bulk publish** to push them to WordPress or Webflow in a single action. Rows not yet approved remain in the Sheet until you clear them.
  </Step>
</Steps>

## Controlling quality at scale

Running workflows across thousands of rows means quality variance is inevitable. Use a layered approach to catch issues before they reach your CMS:

* **Automated quality scores** — Add a Quality Score SuperBlock column to every Sheet that generates content. Scores measure brand alignment, structural completeness, and citation readiness for each row automatically.
* **Manual review for high-stakes content** — Set a lower quality threshold for high-traffic pages or new content types so more rows land in the Needs Review queue for human inspection.
* **Per-row logs for diagnostics** — Every row keeps its own execution log. When a row fails or scores unexpectedly low, open the log to see exactly which step produced the issue and what the inputs were.

<Tip>
  Before running a Sheet across thousands of rows, execute a 10-row test run first. Verify that the outputs meet your quality bar, that input mappings are correct, and that the review gate is calibrated to your threshold. Fixing issues at row 10 is far cheaper than diagnosing them at row 5,000.
</Tip>

## Credit planning for bulk runs

Large Sheet runs can consume a significant portion of your monthly credit allocation. Plan ahead to avoid interruptions:

* **Check estimated cost before running** — When you configure a Workflow column, VeluraHQ shows an estimated credit cost per row. Multiply by your total row count for a batch estimate before committing.
* **Run a 50-row sample first** — Use a sample run to validate both quality and actual credit consumption before scaling. Estimated and actual costs can diverge depending on workflow complexity.
* **Schedule large batches for off-peak hours** — Use the Automation panel to run large batches overnight or over the weekend. This keeps your daytime credit budget available for manual, interactive work during business hours.

<Note>
  Failed rows don't consume a second credit allocation automatically. When a row fails, it stops executing and is not retried until you trigger a manual retry. Fix the underlying issue first — incorrect input data, a misconfigured mapping, or a workflow error — then re-run the failed rows individually. You control when credits are spent on retries.
</Note>
