Batch processing
Run the same tool against up to 50 files in one operation. Agency plan only.
By Operelio team
On this page10
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.
| Scenario | What it looks like |
|---|---|
| Monthly exports | Twelve 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 files | Six supplier price lists arrive each quarter in the same format. Deduplicate each one in a single batch, get one ZIP back. |
| Format conversion in bulk | A 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 cleanup | Twenty 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.
| Tools | Status |
|---|---|
| Excel to CSV, CSV to Excel, Clean Headers, Health Check, Deduplicate, Transpose | Works in batch |
| Find & Replace, Filter & Extract, Column Manager | Excluded. These need per-file rules; the batch flow applies one configuration to every file. |
| CRM Formatter | Excluded. Needs per-file column-to-field mapping that the batch flow can't supply. |
| Match & pull columns, Compare Files, Merge Files | Excluded. These need paired inputs, not many independent files. |
| Split File | Excluded. Already produces a ZIP per file; batching it would mean ZIPs of ZIPs. |
| Workflow Builder | Excluded. Already an orchestration shape; batching a workflow would double-orchestrate. |
How to use it
Go to Batch
Open Batch from the navigation. The link only shows up on the Agency plan.
Select a tool
Pick one of the six batchable tools from the grid. Each tile shows the tool name and a short description.
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.
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.
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:
| Limit | Value |
|---|---|
| Max files per batch | 50 |
| Max total rows across all files | 500,000 |
| Max file size per file | 100 MB |
| Max rows per file | 150,000 |
| Monthly job quota (each file = 1 job) | 2,000 jobs |
| File retention | 90 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 wrong | What 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 cap | The 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:
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 field | What it is |
|---|---|
| batchId | Unique ID for the batch. Use it for polling and downloading. |
| jobIds | Array of job IDs, one per file, in upload order. |
| pollUrl | GET this URL to check progress and per-file status. |
| downloadUrl | GET 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.