Tools

OpenAI Batch API JSONL builder

Turn a list of prompts into a ready-to-upload batch file with custom_id, endpoint and body on every line.

Runs in your browserAI developer tools31.9K
Free

Input

0 B

Result

The result will appear here.

The Batch API halves the price of OpenAI calls in exchange for a 24-hour window, but it wants its input as JSONL where every line carries a custom_id, a method, a URL and a full request body — a format that is easy to get subtly wrong and annoying to produce for a one-off job. Paste your prompts, set the model, system prompt and output limit once, and this builder writes the file: chat completions or the Responses API, JSON mode when you need structured output, and ids with a prefix you choose so the results map back to your rows.

How it works

  • Prompts separated by a blank line become one request each, so multi-line prompts stay intact; a list with no blank lines is read one prompt per line.
  • The system prompt, model, token limit and JSON mode are applied to every request; input tokens are counted with o200k_base so you can estimate the bill before uploading.
  • Download the result as .jsonl, upload it with purpose=batch, then create the batch — the custom_ids come back on every output line.

Where your data goes

Nowhere. This tool runs entirely in your browser: the text you paste is processed by the page and is never transmitted to a server or written to a log.

This tool is free and needs no account. Its results exist only in your open page and are not saved anywhere.

What it costs

This tool is free, with no sign-in and no points.

Common questions

Which endpoints does the Batch API accept?
/v1/chat/completions, /v1/responses, /v1/embeddings and /v1/completions. This tool builds the first two; for embeddings the body is just model and input, which is simple enough to write by hand. Every line in one file must target the same endpoint.
Why max_completion_tokens rather than max_tokens?
Because current OpenAI models reject max_tokens on chat completions in favour of max_completion_tokens, and the Responses API calls the same limit max_output_tokens. The builder uses the right name for the endpoint you picked.
Are there limits on the file?
Up to 50,000 requests and 200 MB per batch file, and your normal rate limits do not apply — batches have their own queue. The stats show the request count and the file size so you know when to split.

The open-source behind it

This tool is a self-contained implementation. openai/openai-python (Apache-2.0) does the same job as a library — if you need this behaviour inside your own program, start there rather than calling a web page.

openai/openai-python

Also known as

  • openai batch api jsonl
  • batch api file generator
  • create batch jsonl openai
  • custom_id batch requests
  • openai batch 50% discount
  • responses api batch