Fixed-width vs delimited files in a loader template
The difference between delimited and fixed-width lead files, and how each one is described inside a VICIdial loader template.
Before VICIdial can pull names and numbers out of a file, it has to know how the columns are separated. There are two common shapes a file can take, and a saved loader template can describe either one. Getting this right is the difference between clean Lead records and a list full of garbled data. The good news: once a template matches your layout, it works on any matching file regardless of the file type. For the wider context, see the lists and leads guide.
Delimited files
A delimited file uses a separator character between each piece of data. The most familiar is the comma in a CSV, but tabs and pipes are common too. The columns are wherever the separators fall, so a row can be wide or narrow and the loader still knows where each value starts and stops. When you upload a sample, the Lead loader inspects the file and works out the delimiter for plain text files automatically.
Fixed-width files
A fixed-width file has no separators at all. Instead, each field always occupies the same character positions in the row, padded with spaces so everything lines up like columns in a spreadsheet print-out. The phone might always sit in characters 1 through 10, the first name in 11 through 30, and so on. These files come out of older systems and mainframes, and they are unforgiving: one stray character shifts every field after it. If your provider hands you a file like this, ask them for a column-position spec so you can match each slice to the right field instead of guessing.
Whichever shape the file takes, the goal is the same: every value ends up in the field it belongs to so the dialer can act on it. A phone in the phone column, a state in the state column, and a Vendor lead code in its own slot if you track where each record came from. Get the layout wrong and a later Duplicate check can misfire because it is comparing the wrong columns, so it pays to confirm the mapping before you load the full batch.
flowchart LR
A[Sample file] --> B{Separators present?}
B -->|Yes| C[Delimited]
B -->|No| D[Fixed-width]
C --> E[Split on delimiter]
D --> F[Cut by char position]
E --> G[Map to list fields]
F --> GHow a template describes the layout
Inside the template editor, each list column you want to fill gets an index value that points at a spot in the file row. The counting starts at 0, not 1, so the very first field in the row is index 0. You can reuse an index if two columns should pull from the same spot, and when fields share an index the editor shows them in the current-file-layout line separated by a pipe character. Any non-numeric junk you type into an index box is stripped out when you save.
The current-file-layout preview is a quote-and-comma view of how the template reads your file. Columns the template does not use show up as unused, which is a quick way to confirm you have not skipped anything important. Build the template against a small sample, under a hundred records, so the page loads in seconds and you can check the preview without waiting. There is a real gotcha here too: wait for the sample to finish loading before you touch any of the dropdowns. Click too early and the menus stay empty for good, and your only fix is to refresh and start the template over from scratch.
Whichever shape your data takes, VICIfast spins up your dialer in under 40 seconds so you can start loading the same day. See the pricing page to pick a plan, and if lists are new to you, start with what a VICIdial list is.
Frequently asked
- For plain text files the loader inspects your sample and detects the delimiter on its own. A saved template then works on any later file that matches that layout, whatever its file type.
- The template uses index values, and the first field in each row is index 0 rather than 1. This is the most common cause of fields landing in the wrong column.
- It marks a column in your file that the template is not loading. It is a handy check that you have not accidentally skipped a field you wanted.
› Do I have to pick the file type myself?
› Why does counting start at 0?
› What does -unused- mean in the layout preview?
About VICIfast LLC
VICIfast LLC operates a managed VICIdial hosting + BYOI service for outbound and inbound call centers. We run the dialers, the carriers, the recordings pipeline, and the compliance plumbing so operators don’t have to.
Citing this article
VICIfast Engineering. “Fixed-width vs delimited files in a loader template”. VICIfast LLC, June 23, 2026. Retrieved from https://vicifast.com/blog/vicidial-loader-fixed-vs-delimited
Have questions?
Related posts
You might be interested in
VICIfast newsletter
Liked this? Get the next one in your inbox.
We ship the kind of stuff you just read — concrete, numbers-first, no drip. One email when a new post goes live. Unsubscribe in one click.
Comments
No comments yet — be the first.