Automation·6 min read

Batch processing

Run the same tool against up to 50 files in one operation. Agency plan only.

By Operelio team

On this page10
  1. 1.What it does
  2. 2.When to use it
  3. 3.Which tools work in batch
  4. 4.How to use it
  5. 5.What happens during processing
  6. 6.Limits
  7. 7.How limits behave
  8. 8.What happens if a file fails
  9. 9.Programmatic batches via the API
  10. 10.Frequently asked questions

What it does

Operelio's standard tools work on one file at a time. Batch processing applies the same tool to many files in a single operation. It's useful when you have a folder of monthly exports, a stack of supplier files in the same format, or a quarterly batch of leads to clean.

Each file is processed independently and you get one combined ZIP at the end. Available on the Agency plan, with caps of 50 files and 500,000 rows total per batch.

When to use it

Batch pays off whenever you'd otherwise upload, configure, and download the same way several times in a row.

ScenarioWhat it looks like
Monthly exportsTwelve monthly Stripe or HubSpot exports with the same shape. Run Clean Headers across all of them in one batch instead of one tool run per file.
Supplier filesSix supplier price lists arrive each quarter in the same format. Deduplicate each one in a single batch, get one ZIP back.
Format conversion in bulkA folder of legacy .xls files needs to become .xlsx or .csv before another team can use them. Excel to CSV (or CSV to Excel) handles all of them at once.
Pre-import cleanupTwenty regional lead lists need a Health Check before you decide which to import. Run them as a batch and review the per-file scores together.

Which tools work in batch

Six tools fit the batch shape: single-file inputs that take the same configuration across every file. The other nine are excluded for the reasons in the table below.

ToolsStatus
Excel to CSV, CSV to Excel, Clean Headers, Health Check, Deduplicate, TransposeWorks in batch
Find & Replace, Filter & Extract, Column ManagerExcluded. These need per-file rules; the batch flow applies one configuration to every file.
CRM FormatterExcluded. Needs per-file column-to-field mapping that the batch flow can't supply.
Match & pull columns, Compare Files, Merge FilesExcluded. These need paired inputs, not many independent files.
Split FileExcluded. Already produces a ZIP per file; batching it would mean ZIPs of ZIPs.
Workflow BuilderExcluded. Already an orchestration shape; batching a workflow would double-orchestrate.

How to use it

1

Go to Batch

Open Batch from the navigation. The link only shows up on the Agency plan.

2

Select a tool

Pick one of the six batchable tools from the grid. Each tile shows the tool name and a short description.

3

Upload files

Drop up to 50 files into the upload area, or click to browse. Files upload one at a time, so a full 50-file batch can take a minute. A live counter shows progress as each file lands. Excel to CSV only accepts .xlsx and .xls; CSV to Excel only accepts .csv. The other four tools accept any of the three.

4

Configure

Set the tool options once. These settings apply to every file in the batch. Most batchable tools need almost no setup: Health Check, Clean Headers, Deduplicate, and Transpose run with sensible defaults; CSV to Excel has no options. Every tool that reads Excel takes an optional tab name, applied to all the files in the run. Leave it blank and each file's first tab is used.

5

Review and run

The review screen shows the tool, the files in upload order, and the total job count. If any of your files has more than one tab, it says so here and names them, so you can set a tab name before running rather than finding out from the output. Click Run batch. You're sent to the batch detail page, where each file's status updates live.

Double-check the review screen before clicking Run batch. Each file consumes one of your 2,000 monthly jobs, and there's no cancel button once the batch starts.

What happens during processing

The batch detail page polls live. You'll see a progress card showing completed, queued, and processing counts (for example, "2 completed · 1 queued · 67%"). Per-file rows turn green as each job finishes, or red on failure with the error message inline.

Files are processed in upload order. Agency batches use the priority job queue, so they're picked up before Free and Pro jobs sitting in front of them.

You can close the tab safely. Jobs run server-side and continue to completion in the background. Results land on the same batch detail page, accessible from your history.

If two files share a name (for example, three different folders all containing contacts.csv), the ZIP renames them on the way out: contacts.csv, contacts (2).csv, contacts (3).csv. Same convention browsers and Finder use, so the per-file rows match the ZIP entries.

Limits

Hard caps for batch jobs on the Agency plan:

LimitValue
Max files per batch50
Max total rows across all files500,000
Max file size per file100 MB
Max rows per file150,000
Monthly job quota (each file = 1 job)2,000 jobs
File retention90 days

How limits behave

If the total rows across your selected files exceed 500,000, the batch is rejected with a clear error before any file is processed. Reduce file count or row count and resubmit; nothing is consumed.

If a single file exceeds 150,000 rows, the file's job still runs, but rows past 150,000 are skipped. That file's results page shows a row-limit banner with the original row count, the cap, and the number of rows processed.

If your remaining monthly quota is smaller than the batch size, the batch is rejected with a clear error showing what's left and how many jobs the batch would need. Free up quota or wait for next month's reset.

What happens if a file fails

Each file is its own independent job. If one file fails, the rest keep running. The combined ZIP includes every successful output and skips failures; per-file Download buttons stay available for any successful row. Failed rows show the error message inline.

What went wrongWhat you'll see
Wrong file format (e.g. a .csv uploaded to Excel to CSV)The dropzone rejects it before upload. If it slips through, the per-file row shows "This file isn't an Excel file. Excel to CSV needs an .xlsx or .xls file."
File can't be parsed (corrupt spreadsheet, encoding issues)The per-file row shows "This file couldn't be opened as a spreadsheet. Check it opens in Excel and try again."
File is empty (no rows)The per-file row shows "This file looks empty. Add some rows and try again."
File exceeds the 150,000-row capThe job runs to completion on the first 150,000 rows. The per-file results page shows a row-limit banner.

Programmatic batches via the API

If you're scripting batches, the public API mirrors the UI flow. Available on Agency. Upload your files first using POST /api/v1/uploads (returns a fileId for each), then create the batch:

Create a batch
curl -X POST https://operelio.com/api/v1/jobs/batch \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "fileIds": ["file-uuid-1", "file-uuid-2"],
    "toolType": "deduplicate",
    "configJson": {}
  }'
Response fieldWhat it is
batchIdUnique ID for the batch. Use it for polling and downloading.
jobIdsArray of job IDs, one per file, in upload order.
pollUrlGET this URL to check progress and per-file status.
downloadUrlGET this URL once status is complete to fetch the combined ZIP.

Each batch counts as 1 API call against your 60-per-minute rate limit, no matter how many files. Each file in the batch consumes 1 of your 2,000 monthly jobs. Submitting more than 50 fileIds, duplicate fileIds, or fileIds you don't own all return a clear 400 with the reason.

Frequently asked questions

What plan do I need?

Batch processing is Agency only ($299/month, or $2,691/year at the annual rate). The individual tools it batches are available on Free and Pro for one-file-at-a-time use.

What happens to workbooks with several tabs?

Batch reads one tab per file. By default that's the first tab, and the review screen tells you which of your files have more than one so nothing goes through quietly. If you name a tab, it applies to every file in the run. A file that hasn't got a tab by that name fails on its own and tells you the tabs it does have, and the rest of the batch carries on. That's deliberate: guessing a different tab would be worse than stopping.

Can I run different tools in one batch?

No. A batch applies one tool with one configuration to every file in it. If you need two tools across the same set of files, run two batches, or build a Workflow on a single file and run that on each.

Will the same batch always produce the same output for the same files?

Yes. The transformations are deterministic. Same files in, same configuration, same outputs, every time.

What happens if I exceed my monthly job quota mid-batch?

The check runs upfront. If you have 30 jobs left and submit a 40-file batch, the request is rejected with a clear error before any file is processed; nothing is consumed. Either split the batch into smaller chunks that fit your remaining quota, or wait for the monthly reset. Deleting old jobs from your history doesn't refund credits.

Can I cancel a running batch?

Not from the UI. Once submitted, the batch runs to completion. If you spot the wrong tool or wrong files mid-run, you can close the tab; the jobs still complete in the background and the result lands in your history. Each file you didn't want will have already consumed a job credit, so double-check the review screen before clicking Run batch.

Are intermediate files kept?

No. Each file in a batch produces one output, and that output is the only artifact saved to your history. Failed files have no output but their error message is preserved on the batch detail page. File retention follows the Agency policy: 90 days from creation.

Do batch jobs jump the queue?

Yes. Agency jobs (including every file in a batch) use the priority queue, picked up ahead of Free and Pro jobs sitting in front of them. If you're submitting a 50-file batch alongside other users, your jobs are processed first.

What if Operelio is updated mid-batch?

Each file is its own job, processed independently. A deploy mid-batch doesn't restart in-flight jobs; it picks up the next queued job with the new code. If you're processing a large batch around a known maintenance window, run it before or after rather than during.

Ready to get started?

Upload a file and run your first transformation. Free, no credit card required.