New here? Follow Your first batch to build a simple chain and export your first files. Find setup, presets, CLI and troubleshooting reference below.
Walkthrough
Your first batch
Make a small batch quieter, export new WAV files and save the chain for next time. This walkthrough uses only the built-in Gain node; you do not need to install or scan any plugins.
What you need: Batchy for macOS or Windows, an active trial or license, and two or three short WAV files you can listen to. Make a folder called Batchy First Batch with separate Sources and Exports folders. Copy your example files into Sources and leave Exports empty.
1 Install and start your trial
Download the installer for your computer, install Batchy and open it. On the welcome screen, enter your email address, then select Start 7-day free trial. You can also start an unused trial from Help → Manage License.... Marketing emails are optional; no payment is required.
Downloading does not start the clock. The seven days begin when you start the trial in the app. Already purchased? Activate with the license key from your purchase email instead.
Ready to continue: the app shows an active trial or license. An expired trial cannot be restarted; license and activation help explains the options.
2 Import a small set of files
Drag your example WAV files from Sources into Batchy's file list, or use File → Import Audio Files... and choose them. Click one file to make it the file you will audition.
Check: you can see your two or three filenames in the list. Clear any search or filter hiding them. The batch window starts from the visible file list; selecting one file for playback does not limit the batch to that file.
3 Build Input → Gain → Output
If you already have a chain you want to keep, use SAVE AS in the preset bar to save it first. Then choose Default from the preset dropdown. This gives you a simple Input connected to Output.
Open NODE GRAPH. If the node palette is hidden, click NODE PALETTE. Find Gain in the built-in nodes and drag it onto an empty area of the graph.
Right-click the existing cable from Input directly to Output and choose Delete Connection. Keep the Input and Output nodes.
Drag from Input's output pin on the right to Gain's input pin on the left. Connect Gain's right-hand output pin to Output's left-hand input pin.
Set Gain to −6 dB. Use its inline control, or double-click the Gain node to open its editor and enter -6 in the value box.
InputReads each source file
Gain −6 dBLowers the signal level
OutputWrites each new file
Signal-flow example: two cables, with every file passing through Gain. Remove the direct Input-to-Output cable so the original signal is not mixed back in.
Check: the graph has these three nodes and two connections. Leave Input processing at the Default preset's settings for this exercise.
4 Listen before exporting
Select a source file and press Space to play or pause. Choose PLAYBACK → LIVE and keep BYPASS off to audition the chain. The selected Output should be the one connected to Gain. At −6 dB, the result should be quieter than the original; this exercise is a level change, not loudness normalization.
If you hear nothing, check both cables and the selected file/output. Open Settings → Audio Settings... to choose your listening device if needed. Press . to stop playback.
5 Choose where the new files go
Double-click the Output node's header to open its settings. Use these settings for this example, then click Apply:
Example output settings
Overwrite source files
Off. Keep the original audio.
Output path
Browse → your Exports folder. Keep this batch easy to find.
Filename
$filename_trial Add a recognizable suffix; do not type the extension.
Preserve original format
Off. Allow the explicit WAV setting below.
Format
WAV. Make a widely supported audio file.
Normalization → Type
NONE. Keep the Gain change instead of normalizing it away.
Leave the other settings at their defaults for this first pass. In this filename template, $filename means the source name without its extension. A new output's default template is ${filename}_processed, so a batch never writes over its source files unless you ask it to.
Replacing source files. If an output would be written over its own source file (for example the template $filename with the output next to the source, in the same format), its row shows REPLACES SOURCE and PROCESS FILES first asks Replace source files?, listing the files. Cancel renders nothing; Replace renders in place (safely, through a temporary file). Turn on Overwrite source files in the output settings to replace sources without being asked. An automated render (--auto-render) has no one to ask, so it refuses instead.
6 Preview and process the batch
Choose Process → Open Batch Processor. In the batch window, check the source files and selected outputs. For this exercise there should be one output for each of your two or three source files.
Review the OUTPUT FILE column before processing: every destination should point into Exports and have the _trial.wav suffix. Keep Allow overwrite off. If the preview is wrong, correct the Output settings before continuing.
Click PROCESS FILES and wait for the output rows to report DONE. A skipped or failed output is not a completed export; inspect its status and use VIEW LOG if you need details.
7 Find and check the results
Select a completed output row and choose SHOW IN FINDER on macOS or SHOW IN EXPLORER on Windows. You can also open your Exports folder directly.
Illustrative filenames. Your exports use the names of the files you imported.
Success looks like: one new WAV for each selected source, the original files still in Sources, and exports you can open and hear. With the default Input, Gain at −6 dB and normalization off, each export should be quieter and have the same duration as its source.
For a repeat run, use a new empty output folder or change the filename suffix. Existing destinations can be skipped when overwriting is disabled.
8 Save the chain for another batch
Use SAVE AS in the top preset bar. Give the file a name such as First Batch -6dB.batchyfx and save it. Use the preset dropdown to recall presets in your configured preset folders.
A preset stores the processing setup, including output settings; it is not a package of your source audio. When you reuse it, import the new source files and check the Output path and batch preview again.
You now have: a reusable processing chain and a small, verified set of exports. Next, replace Gain with the processing your work needs, then repeat the same preview-and-check routine.
Setup
Setup and workflow basics
New to Batchy? Start with Your first batch above. These notes cover additional setup; third-party plugins are optional.
Audio device setup
Open Settings → Audio Settings... to choose your audio device, sample rate and buffer size. A larger buffer can help with playback dropouts; a smaller buffer reduces playback latency. Use your device's working defaults to begin.
Third-party plugins
Batchy's built-in nodes work without a plugin scan. To configure your own VST3 plugins, or Audio Units on macOS, open Settings → Plugin Settings.... Use Settings → Rescan Plugins when you need to refresh the available plugins.
A preset that uses third-party plugins needs those plugins installed and available on the machine where it runs.
Files, graphs and presets
The file list holds the source audio. NODE GRAPH defines the processing route, and each Output node defines an export. A .batchyfx preset saves the setup for reuse. Start with one Output; add more when you need different deliveries from the same sources.
Audition one file, check the destination preview, and render a small batch before processing a large folder.
Reference
Quick Reference
Common Tasks
Task
How
Load Audio File
Drag & drop onto window, or File → Import Audio Files... (Cmd/Ctrl+O)
WAV and AIFF are always available. FLAC, MP3, and OGG depend on readers registered in the build; M4A/AAC/CAF use Apple Core Audio, and WMA/ASF require Windows Media Format support. Run Batchy --help for the exact target-machine list.
Processing failed — a render/fatal processing error occurred, result accounting was inconsistent, or a requested report could not be written
2
Configuration error — invalid arguments, missing input/preset, nothing to process, or another pre-processing validation failure
130
Cancelled or interrupted — for example Ctrl+C, SIGINT, SIGTERM, or an internal cancellation deadline
Performance Tips
Use appropriate buffer size — balance latency vs. CPU
Process similar files together — same format/rate = faster
Use multi-threading for batches — set --max-threads to CPU core count
Test with dry run — validate before processing large batches
Use local storage — network drives slow processing
Close other audio apps — prevent interface conflicts
Reference
Keyboard Shortcuts
Transport Controls
Shortcut
Action
Space
Play/Pause
.
Stop (return to start)
L
Toggle Loop
A
Toggle Live / Processed Audio
Home
Jump to Start
End
Jump to End
File Operations
Shortcut
Action
Cmd/Ctrl + O
Import Audio Files
Cmd/Ctrl + S
Save Preset
Cmd/Ctrl + Shift + S
Save Preset As
Cmd/Ctrl + W
Close Window
Cmd/Ctrl + Q
Quit Application
Editing
Shortcut
Action
Cmd/Ctrl + Z
Undo
Cmd/Ctrl + Shift + Z
Redo
Cmd/Ctrl + X
Cut
Cmd/Ctrl + C
Copy
Cmd/Ctrl + V
Paste
Cmd/Ctrl + D
Duplicate
Delete
Delete Selected
Cmd/Ctrl + A
Select All
Escape
Clear Selection
Graph Navigation
Shortcut
Action
Space + Drag
Pan Canvas
Middle Mouse + Drag
Pan Canvas (alt)
Mouse Wheel
Zoom In/Out
Cmd/Ctrl + +
Zoom In
Cmd/Ctrl + -
Zoom Out
Cmd/Ctrl + 0
Fit to Window
F
Frame Selection
H
Home View
Tab
Switch View (Waveform/Node Graph)
Node Operations
Shortcut
Action
Double-Click Node
Open Editor
Cmd/Ctrl + Click
Add to Selection
Cmd/Ctrl + E
Bypass Selected
R
Rename Node
Cmd/Ctrl + I
Node Info
Parameter Adjustment
Shortcut
Action
Click + Drag
Adjust Value
Shift + Drag
Fine Adjust (10x slower)
Double-Click Slider
Reset to Default
Alt + Click
Type Numeric Value
Arrow Keys
Increment/Decrement
Page Up/Down
Large Adjust
Waveform View
Shortcut
Action
Mouse Wheel
Zoom Horizontal
Shift + Mouse Wheel
Zoom Vertical
Click + Drag
Set Loop Region
Double-Click
Clear Loop
S
Toggle Spectrogram
M
Toggle Mono/Stereo
G
Toggle Grid
Batch Processing
Shortcut
Action
Cmd/Ctrl + B
Open Batch Window
Cmd/Ctrl + Enter
Start Processing
Escape
Cancel Processing
Cmd/Ctrl + R
Refresh Preview
Quick Reference Card
Space Play/Pause
Cmd/Ctrl+S Save Preset
Cmd/Ctrl+Z Undo
Delete Delete Selected
B Bypass (A/B)
Tab Switch View
Cmd/Ctrl+0 Fit Graph
Command line
CLI / Headless Processing
Overview
Batchy provides command-line batch processing on supported macOS and Windows hosts. Headless --batch-process runs without opening the application UI or requiring an interactive desktop session, making it suitable for scripts, CI/CD jobs, remote sessions, and scheduled automation.
Run ./Batchy --help for the exact options and formats supported by that build. ./Batchy --help-json writes one strict JSON document to stdout for automation and wrapper integrations; diagnostics are sent to stderr.
Executable Location
Platform
Path
macOS
/Applications/Batchy.app/Contents/MacOS/Batchy
Windows
C:\Program Files\Batchy\Batchy.exe
The Windows installer uses the path above by default; a custom install may use another folder. If you add the executable’s directory to PATH, invoke Batchy --batch-process ... directly.
Command Line Reference
Required Arguments
Option
Short
Description
--batch-process
--batch
Enable headless batch processing mode
--input <path>
-i
Input audio file or directory
--preset <file>
-p
Batchy preset file (.batchyfx) or catalog preset name. Use --list-presets to see available catalog presets.
Output Configuration
Option
Short
Description
--output-dir <path>
-o
Output directory (default: input directory). If the final path would equal the input, Batchy refuses unless you explicitly pass --in-place (--overwrite-outputs never overwrites a source file).
--output-format <fmt>
Output format: wav, aiff, flac, ogg or mp3. MP3 uses the LAME encoder bundled with Batchy; run Batchy --help on the target machine for the exact list.
--output-sample-rate <rate>
Sample rate (22050, 44100, 48000, 88200, 96000, 192000) or “same” to match input
--output-bit-depth <depth>
Bit depth: 16, 24, 32, 32float, or “same”. (32 and 32float are equivalent — IEEE 754 single-precision float)
--output-channels <config>
Channel layout: mono, stereo, “same”, or “graph”
--output-filename <template>
Relative filename or safe subpath beneath --output-dir, with $tokens
--output <selector>
Select output nodes by ID, exact name, or a name glob using * and ?
--output-override <target:key:value>
Per-output setting override; repeat for multiple overrides (see Per-Output Overrides)
Target for the selected normalization mode, from -60 to 0: LUFS for lufs, dBFS for peak/rms. Defaults when selecting a mode are -14 LUFS, -1 dBFS peak, and -20 dBFS RMS.
--tail-length <seconds>
Render additional tail after file ends, in seconds (for reverbs, delays). Without this flag, the preset’s tail settings are used.
--no-tail
Disable tail rendering — output is truncated at input file duration
--max-threads <count>
Parallel processing threads (default: min(4, CPU cores))
--fail-fast
Stop remaining batch work after the first render failure
--render-report <path>
Write a JSON report, including failures and cancellation; missing parent directories are created after validation
--session-name <name>
Name this batch session in the report
--preserve-format
Keep source file’s format when no override is specified. Also accepts --preserve-original-format.
--no-preserve-format
Force preset default format
--preserve-spaces
Keep spaces in output filenames, overriding the preset
--no-preserve-spaces
Replace spaces with underscores, overriding the preset; with neither flag, use the preset setting
--overwrite-outputs
Replace existing output files instead of skipping them. Never overwrites source files; use --in-place for that.
--in-place
Allow a resolved output to replace its input (the only flag that does; --overwrite-outputs does not). Also required for a preset whose output is set to overwrite source files. Batchy renders to a temporary file and swaps only after a successful render; use only when replacement is intentional.
General Options
Option
Short
Description
--help
-h
Show help message
--help-json
Output help in JSON format — useful for building GUI wrappers or validating automation scripts
--list-override-keys
List all valid per-output override keys and accepted values
--list-presets
List available catalog presets and exit
--verbose
-v
Enable detailed logging
--log-file <path>
Write logs to a file; Batchy creates missing parent directories
--progress
Show progress bar. Also accepts --show-progress.
--dry-run
Validate inputs and configuration without processing
License Commands
These are standalone, mutually exclusive commands. They do not require --batch-process, --input, or --preset, and exit after the requested license operation. Headless exports use the same machine license state as the GUI. Start a 7-day free trial with your email address from the welcome screen or Manage License, or purchase and activate a license. Marketing emails are optional. An active trial also permits headless exports on the same machine; the CLI does not start trials. Legacy trials retain their original terms.
Option
Description
--license-status
Print the current license state and machine ID; returns 0 even when the machine is unlicensed or the trial has expired
--activate <license-key>
Activate this machine and exit; a rejected activation returns 1, while a missing key returns 2
--deactivate
Deactivate this machine and exit; returns 1 when no active license exists or deactivation fails
Relative paths: file and directory arguments are resolved from the process’s current working directory, including --input, preset paths, --output-dir, --log-file, --render-report, GUI load paths, and positional audio paths. Paths beginning with ~ resolve from the user’s home directory.
Validation before mutation: parser and mode-validation failures do not create user-requested output, log, or report directories. Each output destination is also safety-checked before its directory is materialized.
Contained outputs: filename templates may create safe subdirectories but must remain relative beneath the resolved output root; absolute filenames and .. escapes are rejected. Output roots are canonicalized through symlinks, and blocked system locations or over-limit path components are rejected before writing.
Existing files: a different existing output is skipped by default; pass --overwrite-outputs to replace it.
Input replacement: if an output resolves to the input itself (including a preset set to overwrite source files), Batchy fails unless --in-place explicitly permits replacement; --overwrite-outputs only replaces earlier outputs and never overwrites a source file. The error explains the fix, including when an empty token made the names match. In-place renders use a temporary sibling plus swap/rollback protection rather than writing directly over the source.
For automation, use distinct input/output directories and run --dry-run first. A dry run performs production path and output-collision validation without rendering or creating output directories.
JSON Render Reports
--render-report <path> writes a deterministic JSON summary after a batch reaches processing, including failed, skipped, and cancelled counts. It creates missing report parent directories. Commands rejected before processing do not create a report; if a requested report cannot be written, the process returns exit code 1.
The stable top-level fields are session, summary, parameterOverrides, and files:
Use --session-name to label the report. The report’s summary.exitCode matches the process result for the reported batch, including exit 130 for cancellation. Headless reports currently provide aggregate rows: their per-file path/format fields may contain the requested batch paths and zero/unknown metadata, with an aggregate-only warning. Do not treat those fields as a per-file manifest.
Supported Formats
Input Formats
WAV and AIFF are always available. FLAC, MP3, and OGG depend on the readers registered in that build; M4A/AAC/CAF use Apple Core Audio, and WMA/ASF require Windows Media Format support. Run Batchy --help on the target machine for the exact list.
Output Formats
Always available: WAV, AIFF, FLAC, OGG
MP3: written with the LAME encoder that ships with Batchy on macOS and Windows. If that encoder is missing, MP3 is not listed; run --help on the target machine to check.
Note: AAC/M4A output is not supported.
Filename Templates
Important: Shell quoting. Templates containing $tokens must be single-quoted on macOS/Linux to prevent shell variable expansion:
The deliverable tokens $version, $mix, $language, $territory and $deliverable were removed. Older presets that still use them render the word as literal text; supply a value with --user-token (for example --user-token version=v2) to fill one in.
Metadata Tokens
Filled in automatically for every file. Write names that contain an underscore in braces: a bare token stops at the first _, so $sample_rate is read as $sample followed by _rate.
Global CLI overrides (--output-format, --output-sample-rate, etc.)
Preset defaults — lowest
Override Keys Reference
Key
Aliases
Valid Values
Default
output-format
format, file-format
wav, aiff, flac, ogg, mp3
wav
output-sample-rate
sample-rate, samplerate, rate
22050, 44100, 48000, 88200, 96000, 192000, same
same
output-bit-depth
bit-depth, bitdepth, depth
16, 24, 32, 32float, same
same
output-channels
channels
mono, stereo, same, graph
same
normalization
normalisation
none, peak, rms, lufs
none
target-loudness
loudness, targetloudness
-60.0 to 0.0
-14.0
output-filename
filename, file-name, filename-template
template with $tokens
$filename
output-path-template
path, output-path, path-template
template with $tokens
(empty)
preserve-format
preserve-original-format
true/false, yes/no, on/off, 1/0
false
tail-length
—
positive number (seconds)
(preset default)
no-tail
—
true/false, yes/no, on/off, 1/0
false
output-path-template is a scoped override key, not a standalone flag. Use --output-override='Master:output-path-template:$project/Masters' or --output:Master.output-path-template='$project/Masters'.
Examples
# Different format per output
--output-override="Master:format:wav" \
--output-override="Stems/*:format:flac"
# Different loudness targets for different delivery platforms
--output-override="Streaming:loudness:-14" \
--output-override="CD:loudness:-9"
# Using legacy syntax
--output:Master.format=wav \
--output:Stems/*.format=flac
Multi-Output Processing
Batchy supports presets with multiple output nodes. By default, all output nodes are rendered.
# Render specific outputs only
./Batchy --batch-process \
--input audio.wav \
--preset stems_preset.batchyfx \
--output "Master,Vocals,Drums"
# Use wildcards
--output "Stems/*"
# Per-output format overrides
--output-override "Master:format:wav" \
--output-override "Stems/*:format:flac"
Audio Quality Notes
Sample Rate Conversion
When --output-sample-rate differs from the source, offline rendering uses the highest-quality 200-point windowed-sinc mode (approximately -120 dB aliasing rejection). Its group delay is compensated so converted files remain sample-aligned in duration.
Dithering
When enabled in the preset’s output node, TPDF (Triangular Probability Density Function) dithering is applied at the final write depth (for example, when delivering 16-bit audio). Configure it in the GUI when creating the preset.
Double-dithering is automatically prevented: any in-graph dithering is suppressed during batch rendering so only the final post-render dither is applied.
Loudness Measurement
LUFS normalization uses integrated programme loudness with ITU-R BS.1770-4/EBU R128 weighting and gating. LUFS and RMS normalization then use true-peak-aware limiting plus a final BS.1770-4 true-peak safety stage at -1.0 dBTP; peak normalization remains gain-only and targets sample peak. Uncommon channel layouts without a canonical BS.1770 table use a conservative flat-weight fallback and emit a warning.
Normalization mode
Default when selected from CLI
LUFS
-14 LUFS
Peak
-1 dBFS sample peak
RMS
-20 dBFS RMS
Pass --target-loudness to override these defaults. Delivery-platform recommendations change; follow the current specification from your distributor or broadcaster rather than treating Batchy’s defaults as a delivery mandate.
GUI Launch Options
These flags launch Batchy in GUI mode with pre-loaded state — they require a display and are distinct from headless --batch-process mode. Do not combine GUI launch/automation flags with --batch-process; Batchy rejects mixed modes before opening the UI or creating requested output paths.
File & Preset Loading
Option
Description
--load-audio=<path>
Load audio file or directory into GUI (repeatable)
--load-preset=<name>
Load preset by name or path
--scan-plugin=<path>
Scan a single plugin file and exit
Positional arguments (bare audio file paths) are also loaded into the GUI. Relative GUI paths resolve from the current working directory, just like headless paths.
Automation Flags
Option
Description
--auto-play
Start playback automatically after loading
--auto-render
Open batch window and start rendering after loading. If any output would replace its own source file (including a preset set to overwrite source files), the whole batch is refused unless you also pass --in-place; --batch-process refuses only the affected files.
--auto-processed
Enable processed mode (show rendered waveform)
--show-window
Keep the main window visible when supplying a GUI preset or auto-render command; these normally run without the main window
Render Control
Option
Description
--exit-after-render
Exit application after render completes
--output-dir <path>
Set the destination for GUI --auto-render; other batch-only output overrides require --batch-process
Run the same command from macOS launchd or Windows Task Scheduler. Existing outputs are skipped by default, so a recurring job can safely revisit the incoming directory:
#!/bin/bash
./Batchy --batch-process \
--input "$1" \
--preset effect.batchyfx \
--output-dir ./processed
status=$?
case "$status" in
0) echo "Processing completed successfully" ;;
1) echo "One or more processing operations failed" ;;
2) echo "Command or configuration error" ;;
130) echo "Processing was cancelled or interrupted" ;;
*) echo "Unexpected exit code: $status" ;;
esac
exit "$status"
Error Handling & Troubleshooting
Exit Codes
Code
Meaning
0
Success: the requested operation completed
1
Processing failure: a render/fatal processing error occurred, result accounting was inconsistent, or a requested report could not be written
2
Configuration error: invalid or incompatible arguments, missing input/preset, nothing to process, or pre-processing validation failure
130
Cancelled or interrupted: Ctrl+C, SIGINT, SIGTERM, internal cancellation, or deadline expiry
Debugging Failed Runs
Combine --verbose, --log-file, and --dry-run to diagnose issues:
# Validate configuration without processing
./Batchy --batch-process -i /audio -p preset.batchyfx --dry-run --verbose
# Run with full logging to file
./Batchy --batch-process -i /audio -p preset.batchyfx --verbose --log-file debug.log
Common Errors
“Preset not found” — use the full .batchyfx file path, or run --list-presets to see available catalog names
“No audio files found” — run Batchy --help and check that the input directory contains a format supported by that platform build
“Plugin not available in headless mode” — third-party plugins require a GUI scan first (see External Plugin Support above)
“Refusing to render: the output for … would overwrite the source file itself” — choose a separate --output-dir or a different --output-filename, or pass --in-place only when source replacement is intentional (--overwrite-outputs is not enough)
Real-time plugin parameters cannot be automated during batch processing
Rendering is streamed rather than buffered as a whole file, but source/output format limits, free disk space, path limits, plugin behavior, and the configured render deadline still apply
Some plugin formats may not be available in headless mode
Close other audio applications and background apps
Bypass heavy plugins to identify CPU-heavy nodes
Use direct USB/Thunderbolt connection (avoid hubs)
Copy files to local SSD before processing
Distortion or Clipping
Check gain staging — aim for -6dB to -3dB peaks between nodes
Reduce limiter/compressor intensity
Bypass plugins one at a time to isolate culprit
Use 24-bit or 32-bit float output for maximum headroom
Plugin Issues
Plugin Not Found
Rescan: Settings → Rescan Plugins
Verify plugin location:
macOS VST3: /Library/Audio/Plug-Ins/VST3
macOS AU: /Library/Audio/Plug-Ins/Components
Windows VST3: C:\Program Files\Common Files\VST3
Batchy supports VST3 and AU only — VST2 is not supported
Plugins must be 64-bit
Check blacklist: Settings → Plugin Settings...
macOS: Check System Settings → Privacy & Security for unsigned plugins
Plugin Crashes Batchy
Note which plugin you added before the crash
Update the plugin to latest version from vendor
Send crash logs to support: macOS ~/Library/Logs/DiagnosticReports/
Plugin UI Not Appearing
Double-click plugin node to open editor
Check if plugin window is behind Batchy (Mission Control / taskbar)
Close and reopen plugin editor, or restart Batchy
File Loading Problems
"File Could Not Be Loaded"
Check format — use the platform-specific input list printed by Batchy --help
Verify file isn't corrupted (try opening in another app)
Very high sample rates (384kHz+) may not be supported
Check file permissions and path length
Large File Warnings
Batchy uses memory-mapped I/O — actual RAM usage is only 5-30 MB per file regardless of size. Warnings appear at files ≥ 2 GB and are informational only.
macOS: Batchy is notarized by Apple. If macOS still blocks it, make sure the installer came from batchyandfriends.com and contact support.
Windows: SmartScreen may warn about a new release. Make sure the installer came from batchyandfriends.com, then choose "More info" → "Run anyway".
Try deleting license file and re-activating
License & Activation
Download, try or activate Batchy
Download Batchy and start a 7-day free trial with all features. An email address is required to start; no payment is required. After seven days, purchase and activate a license to continue processing and exporting. Downloading does not start the trial. New trials begin when started in the app and cannot be extended or restarted.
Download the installer for your platform and install Batchy.
Select Start 7-day free trial on the welcome screen or in Manage License, then enter your email address. Marketing emails are optional. Already purchased? Paste the license key from your purchase email.
If you entered a license key, select Activate.
"License Invalid" or "License Expired"
Check license status in Preferences → License, or run Batchy --license-status on a headless machine
Ensure internet connection for first activation
Copy-paste license key from email to avoid typos
Personal licenses allow 2 simultaneous activations — deactivate old machine first
Headless Activation
Batchy --activate "YOUR-LICENSE-KEY"
Batchy --license-status
# Before retiring or moving this machine:
Batchy --deactivate
Each command is standalone and exits immediately. Do not combine license commands with one another.
"Activation Required" on first launch
Fresh installations offer a 7-day trial or license activation. If existing license data cannot be read, the recovery screen requires license activation; it does not grant a replacement trial. Contact support if you need help recovering access.
Platform-Specific Issues
macOS: "Batchy is damaged and can't be opened"
Batchy is notarized by Apple, so this message usually means the download was interrupted or came from somewhere other than batchyandfriends.com. Download the installer again from the downloads page. If macOS still blocks it, contact support.
Windows: Missing DLL Error
Install Visual C++ Redistributable 2022 (x64) from Microsoft, then restart.
Windows: Audio Device Shows "ASIO4ALL"
Install proper ASIO drivers from your audio interface manufacturer.
Getting Help
Before contacting support, please gather:
Batchy version (Help → About Batchy)
Operating system version
Audio interface make and model
Steps to reproduce the issue
Screenshots of error dialogs
Crash logs: macOS ~/Library/Logs/DiagnosticReports/ • Windows %LOCALAPPDATA%\Batchy\CrashDumps\ and Event Viewer