← All tools

Template Fill and Batch Generator

Fill template variables from JSON or CSV, generate a result per template and data row, highlight variables, and export files or a zip.

This tool runs entirely in your browser. Your input is never uploaded.

Data source
Missing variables
Templates
#1
Data1 records
Fieldsnameuser.role
Variable highlightMatched variables are highlighted; missing values appear in red.
Hi {{name}}, you work in {{user.role}}.
Result1 of 1 results

This tool runs entirely in your browser. Your input is never uploaded.

Fill templates from JSON or CSV

Write one or more templates using {{name}}, ${name}, and dotted paths like {{user.name}}, then supply values as a JSON object, a JSON array of objects, or CSV rows. Every placeholder is replaced with plain text substitution — no code is ever evaluated.

Multiple templates and batch data

Add several templates as cards and give each a file name. Each template is combined with every data record, so 3 templates and 10 CSV rows produce 30 results. When the combination count gets too large the tool asks you to narrow the input instead of locking up the page.

Fields and variable highlighting

Detected variables are listed as badges, and missing ones are shown in red. With a single JSON record you can fill a key and value form directly, or click "Build JSON skeleton" to generate an empty object from every placeholder. A highlighted preview shows which variables resolve and which are still missing.

Results and export

Switch between List and Combined views. List shows each result separately, with copy and download per item and a "Download all (.zip)" action; Combined merges every result into one text box for quick reading and copying, and downloads it as a single file.

Missing variables

Choose what happens when a value is missing: keep the placeholder as-is, replace it with an empty string, or fail with an error.

Privacy

Everything runs locally. No template or data is sent anywhere.

Related tools

A growing collection of browser-only tools. Your data stays on your device whenever the browser can handle the task.