Navigated to blog › adp-gusto-workday-csv-format-comparison
Back to Blog
csv-guides

ADP vs. Gusto vs. Workday CSV Format Differences and Why Imports Fail

May 23, 2026
13
By SplitForge Team

Quick Answer

ADP Workforce Now payroll imports expect no header row and map columns by position. Gusto Smart CSV requires a header row with exact column names from the Gusto template. Workday EIB requires an exact column count per template row — adding a column without adding all required trailing columns breaks row-length validation. Date format expectations differ: ADP and Gusto commonly use MM/DD/YYYY; Workday EIB templates often use YYYY-MM-DD (ISO 8601). Encoding: Gusto requires UTF-8; ADP typically accepts both UTF-8 and Windows-1252. These differences cause identical employee data to import on one platform and fail on another.


Note: CSV format requirements vary by ADP company configuration, Gusto plan and template version, and Workday EIB template. Requirements described here reflect documentation and community-reported patterns as of May 2026. Confirm against your specific platform template before import.


TL;DR: The same 430-row payroll extract will import cleanly into ADP Workforce Now, fail at upload in Gusto with an encoding error, and fail row-by-row in Workday EIB with column count violations — if the file was prepared for ADP and not reformatted for the target platform. The three failure types map to three format differences: Gusto rejects non-UTF-8 files at upload (before row processing begins); ADP reads every row as an employee record (header row causes "Bad employee number" on row 1); Workday EIB counts columns and rejects rows where the count does not match the template schema. The same employee, the same data — three preparation requirements.


The Reality: One Record, Three Formats

Here is the same employee record prepared for each platform. All values are fictional.

For ADP Workforce Now (no header row, positional mapping):

EMP-10382,Johnson,Michael,547-82-3901,021000021,13857294016,3200.00,REG,80,BiWeekly

For Gusto Smart CSV (header row required, column names from template):

Employee ID,First Name,Last Name,SSN,Routing Number,Account Number,Pay Rate,Pay Type,Regular Hours,Pay Schedule
EMP-10382,Johnson,Michael,547-82-3901,021000021,13857294016,3200.00,Salary,80,BiWeekly

For Workday EIB (header row, exact column count per template, ISO date format):

Worker_ID,First_Name,Last_Name,National_ID,Pay_Rate,Pay_Rate_Frequency,Effective_Date
EMP-10382,Johnson,Michael,547-82-3901,3200.00,Biweekly,2026-05-23

Three versions of the same employee record. Each would fail validation on a platform it was not prepared for:

  • The ADP row (no header) imported into Gusto fails because Gusto reads column names from the header to map fields — without a header, column assignment is ambiguous.
  • The Gusto row imported into ADP fails on row 1: ADP processes the header row as an employee record, and "Employee ID" fails employee number format validation.
  • The Workday EIB row imported into ADP fails: column names do not match ADP's expected positional schema (first column should be the ADP-configured employee number field, not a labeled header).

Format Comparison Matrix

AttributeADP Workforce NowGusto Smart CSVWorkday EIB
Header rowNot included (standard)Required — must match template column namesRequired — must match EIB template exactly
Column mapping methodPositional (by column order)By header nameBy column position in EIB template
Date formatMM/DD/YYYY (standard)MM/DD/YYYYCommonly YYYY-MM-DD — varies by EIB template
EncodingUTF-8 or Windows-1252 (varies)UTF-8 requiredUTF-8
DelimiterCommaCommaComma (some EIBs use pipe or tab)
Earning code formatEmployer-specific strings, case-sensitiveGusto-defined pay types (Hourly, Salary, etc.)Integration-specific field values
Column count validationNo explicit count — shifts on mismatchTemplate-defined — unknown columns flaggedRigid — wrong count fails row
File size limitsVaries by ADP product tierVaries by planVaries by EIB configuration

ADP Workforce Now: Positional Mapping, No Header Row

ADP Workforce Now payroll imports are positional — every column is mapped by its position in the file (column 1, column 2, etc.), not by a column header name. This has two consequences:

No header row in the standard configuration. ADP does not skip or detect a header row. Every row in the import file is processed as an employee record. A header row causes a "Bad employee number in row 1" error because the column label "Employee_Number" fails ADP's employee number format validation. The fix is to remove the header row before import.

Column reorders break imports silently. If you add, remove, or reorder columns in your export, ADP continues mapping by position. Column 7 in the new file maps to whatever field ADP assigned to position 7 in the import layout — which may now be a different field than it was before the column change. The import succeeds with no error, but salary lands in the hours field or pay grade lands in the earning code field. Verify the column order matches the ADP import layout before every export.

Earning codes are employer-specific. ADP earning codes are configured per employer and are case-sensitive strings. The code "REG" at one employer may not be a registered code at another. The same file that works for one ADP customer fails for another because earning codes are not universal ADP standards. See ADP CSV Import Errors: Fix Bad Employee Number & Codes for the full earning code diagnosis.


Gusto Smart CSV: Header-Mapped, UTF-8 Required

Gusto's Smart CSV import uses a template-based approach: Gusto provides a downloadable CSV template with specific column names, and the import maps fields by matching column headers to the template column names.

Header row is required and must match the template exactly. Column names in the template are not configurable — they are defined by Gusto. A header column named "EmployeeID" when the template expects "Employee ID" (with a space) will fail to map. After the upload, Gusto shows which columns mapped successfully and which were unrecognized.

UTF-8 encoding is required. Files exported from Excel as Windows-1252 (the default for many locales in Excel on Windows) are rejected at upload with: File encoding not supported. Please upload a UTF-8 encoded file. (Exact wording may vary by Gusto version.) The rejection happens before row processing begins — no rows are read. Fix: in Excel, Save As → CSV UTF-8 (Comma delimited). See Gusto Payroll CSV Import Errors for the full encoding fix workflow.

Placeholder dates cause row-level failures. Gusto validates date values on import. The placeholder date 00/00/0000 — common in payroll exports where hire date is absent — fails date validation. Fix: identify and correct placeholder date values before import using How to Prepare Employee CSV Files for HRIS Import.


Workday EIB: Rigid Column Count, ISO Date Format

Workday Enterprise Interface Builder (EIB) templates have a fixed schema: the template defines exactly which columns are present, in which order, and in which format. The EIB validates every row against this schema before committing any data.

Column count is validated per row. Every row in the import file must have exactly the same number of columns as the EIB template. If you add a column to your export — even an empty trailing column — every row now has one more field than the template expects. The EIB treats this as a row-length violation and rejects affected rows. Adding a column requires updating the EIB template to include the new column in the correct position, with all required validation rules.

Date format is typically YYYY-MM-DD. Most Workday EIB templates for HR data expect dates in ISO 8601 format (YYYY-MM-DD). A date value of 05/23/2026 (MM/DD/YYYY) fails EIB date field validation in templates configured for ISO format. Verify the date format requirement against your specific EIB template — some templates use MM/DD/YYYY depending on tenant configuration.

EIB validation is row-by-row and stops at blocking errors. When a row fails EIB validation, that row is rejected and reported in the error output. Non-blocking validation warnings may still allow rows to import. Blocking validation failures prevent the row from importing and appear in the EIB error report. See Workday EIB CSV Errors: Row Length, Date and Validation Fixes for the cause/fix table.


Encoding: The Upload-Stage Difference

Encoding errors are the only failure type that occurs before any row is processed. A Gusto upload fails immediately with an encoding error; no rows are evaluated. ADP and Workday EIB are generally more permissive about encoding, though UTF-8 is the safe default for all three.

PlatformEncoding behavior
ADP Workforce NowAccepts UTF-8 and Windows-1252 in most configurations
GustoRequires UTF-8; Windows-1252 rejected at upload
Workday EIBUTF-8 preferred; behavior with non-UTF-8 varies by EIB configuration

The encoding check is the fastest to run and the safest to do first. Use SplitForge Format Checker to detect encoding before upload — the check runs in your browser, no upload required.


Preparing a Single File for Multiple Platforms

If you are managing payroll across multiple platforms — for example, a company running ADP for US payroll and Workday for international — you will need to prepare platform-specific files from the same source data.

The workflow:

  1. Export once from your source HRIS
  2. Clean the raw export (deduplication, whitespace, blank ID removal) using Data Cleaner
  3. Produce a platform-specific version for each target:
    • For ADP: remove the header row; verify column order matches ADP import layout; confirm earning codes match ADP company configuration
    • For Gusto: add header row with Gusto template column names; verify UTF-8 encoding; normalize date format to MM/DD/YYYY
    • For Workday EIB: map to EIB column schema; normalize dates to YYYY-MM-DD (if required by your EIB template); verify column count per row matches the template exactly

Use SplitForge Format Checker to verify encoding and structural integrity of each platform-specific file before submission. Format Checker validates encoding, delimiter, and column count consistency across rows — in your browser, without uploading the file.


Pre-Import Format Check Routine

Before submitting to any platform:

  • Encoding: UTF-8 for Gusto (required); UTF-8 recommended for ADP and Workday EIB
  • Header row: absent for ADP standard imports; present and template-matched for Gusto and Workday EIB
  • Date format: MM/DD/YYYY for ADP and Gusto standard; YYYY-MM-DD for most Workday EIB templates (verify)
  • Column count: matches the import template column count exactly (critical for Workday EIB; verify for ADP positional mapping)
  • Delimiter: comma for all three in standard configurations (verify for Workday EIB — some templates use pipe or tab)
  • Earning codes: match your company's platform-specific registered codes exactly (case-sensitive)
  • File extension: .csv for all three

Privacy Note: Checking Format Without Upload

Payroll files checked with an online format checker are transmitted to a third-party server, creating a GDPR Article 28 processor relationship. Format Checker validates file encoding, delimiter, and column count consistency across rows in your browser — no file data is transmitted. For the full privacy analysis of online tool upload risk, see Never Upload a Payroll CSV to an Online Tool. For the broader privacy-first processing framework, see Privacy-First Data Processing Guide. For the HR/payroll data handling framework, see the HR & Payroll CSV Data Prep Guide.


FAQ

In most ADP Workforce Now payroll import configurations, no. ADP does not skip or detect header rows — it processes every row as an employee record. Row 1 with a header label fails employee number validation and produces "Bad employee number in row 1." Some custom ADP configurations (specific import types, certain product tiers) may support header rows — confirm with your ADP administrator before including one.

Gusto's column matching behavior is template-driven. Based on reported patterns, the column name in the import file should match the template column name exactly. Column names with different capitalization or spacing (for example, "employeeid" vs. "Employee ID") may fail to map. Use the Gusto template download as the source of truth for column names.

The most common cause is a column count mismatch — even a single trailing comma (which creates an extra empty column in some CSV parsers) can cause row-length validation to fail. Export the file, open it in a plain text editor (not Excel), and count the commas per row. Every row should have the same number of commas (one fewer than the column count). See Workday EIB CSV Errors: Row Length, Date and Validation Fixes for the full row-length diagnosis.

No. Earning codes in ADP are employer-specific strings registered in your ADP company configuration. Workday uses field values defined in the EIB integration template, which are mapped to Workday's internal earning type schema. The code "REG" in ADP does not have a direct equivalent string in Workday EIB — the Workday EIB field will reference a different value depending on how the integration was configured. Prepare separate earning code mappings for each platform.

Prepare the source data against the most structurally constrained platform first: Workday EIB. EIB has the strictest requirements — exact column count per template, column schema defined by the integration administrator, ISO date format (commonly YYYY-MM-DD), and UTF-8 encoding. Aligning the source export to the EIB schema first ensures the data is complete and correctly typed. From there, adapt for ADP (remove the header row; verify positional column order matches the ADP import layout; confirm earning codes match your ADP company configuration) and for Gusto (add the Gusto template header row with exact column names; confirm UTF-8 encoding; normalize dates to MM/DD/YYYY). Applying the strictest constraints first prevents discovering data gaps or format incompatibilities only when the most rigid platform rejects the import.


Check CSV Format Before Every Platform Import

Detect encoding, column count, and delimiter issues before upload — no file transmitted
Catch the format difference before the platform error message tells you something went wrong
Works for ADP, Gusto, Workday EIB, and any other payroll import template

Continue Reading

More guides to help you work smarter with your data

csv-guides

Do You Need a Database for a Large CSV File? (2026 Answer)

The internet's answer to every big CSV is 'import it into a database.' Sometimes that's right. Usually it's a weekend of setup to answer one question. Here's the honest decision.

Read More
csv-guides

How to Open a Large CSV File — Even 10 GB, No Database (2026)

Excel dies at 1,048,576 rows, text editors choke, and 'just use a database' is a weekend project. Here's every real way to open a huge CSV — receipts included.

Read More
excel-guides

Excel File Too Large to Open? Fix Every Memory Error (2026)

Excel freezes, throws 'not enough memory,' or crashes outright — on a file that's only 40 MB. Here's why file size lies about memory, and the fix per error.

Read More