NexaMarTech
    Free — no login

    Google Ads Offline Conversion Import Template Validator

    Paste or upload your Google Ads offline conversion import file and catch errors before Google rejects them. The validator checks the click-conversion template headers, the Parameters:TimeZone row, Conversion Time formats, GCLID/GBRAID/WBRAID presence, values, ISO currency codes and duplicate rows, then gives you a row-by-row fix list and a cleaned CSV.

    Your file never leaves your browser. Validation runs entirely on your device; nothing is uploaded to NexaMarTech or anyone else.

    Options

    How to use the offline conversion import validator

    1. Export your converted leads or deals from your CRM with the GCLID, conversion name and conversion time. Or download Google's template from Goals › Conversions › Uploads › + › View templates. Capturing GCLIDs starts with clean click data: tag your campaign links consistently with our UTM builder.
    2. Paste the CSV or drop the file above. Tick “day/month dates” only if your system exports dd/MM.
    3. Click Validate. Fix every red Error row, and review the yellow Warnings.
    4. Download the corrected CSV (only safe fixes such as trimming spaces, header spelling and date format are applied) and upload it in Google Ads. Use Preview before applying.
    5. After upload, check Uploads for results and Download errors if any rows failed.

    The Google Ads offline conversion import template, column by column

    Per Google Ads Help, the click-conversion template has these parts:

    Parameters:TimeZone row

    The first line, above the headers. Use a time zone ID (recommended, e.g. Parameters:TimeZone=America/Chicago) or a GMT offset like -0500. No quotes.

    Google Click ID (and GBRAID/WBRAID)

    The GCLID captured on the ad click. Don't remove this column in a click-based file. iOS clicks can carry GBRAID (app) or WBRAID (web). Since October 3, 2025, GCLID and GBRAID can share one row; when you upload BRAIDs, set the conversion action's count setting to “Every”. Google Help doesn't cover GCLID + WBRAID or GBRAID + WBRAID in one row, so check those in your own Google Ads account.

    Google Help doesn't confirm the exact GBRAID and WBRAID column header names for file uploads. This tool accepts those columns when present and only warns about header spelling. Compare your headers with a template downloaded from your own Google Ads account (Goals › Conversions › Uploads › + › View templates).

    Conversion Name

    Must match the conversion action name in Google Ads exactly, including capitalization.

    Conversion Time formats

    One of Google's accepted formats, e.g. 2026-08-14 13:00:00, 2026-08-14T13:00:00-0500 or 2026-08-14 13:00:00 America/Los_Angeles.

    Conversion Value and Currency

    Optional. Value is a number; leave it blank to use the action's default. Currency is a 3-letter ISO 4217 code such as USD.

    Optional columns (Order ID, consent, custom variables)

    Order ID; Ad User Data and Ad Personalization (Granted/Denied); custom variables as cv:variable_tag.

    Common offline conversion upload errors and what they mean

    What Google saysWhat it usually meansFix
    Conversion date precedes click date / Invalid conversion timesTime zone missing or wrong, so times shift earlierSet Parameters:TimeZone or add offsets to each time. Google suggests checking the time zone or adding 1–2 days.
    This click is too old / Identifiers too oldGCLID is more than 90 days old (63 days for ECL) or outside the conversion windowUpload more often, or import an earlier funnel stage.
    Click too recent / still processingClick is less than 6 hours oldRe-upload later.
    We cannot find this conversion name / Wrong accountName doesn't match an “Import from clicks” action in this accountFix spelling and case, or upload to the owning account.
    Duplicate conversionSame click ID + name + time already uploadedNo action needed; Google counts it once.
    Missing or mismatched headersHeaders renamed, or the wrong template (e.g. ECL enabled)Use Google's exact headers and the right template.

    File uploads vs Data Manager and enhanced conversions for leads

    Google now calls file-based offline conversion import a legacy method and recommends Google Ads Data Manager with enhanced conversions for leads, which can match hashed email or phone as well as GCLIDs. Enhanced conversions for leads only supports Data Manager files. If you still upload the 5-column click template manually, this validator is built for exactly that. If you want uploads to happen automatically from your CRM, see the consultation below.

    Rules this validator checks

    Every check cites the Google Ads Help page it comes from. Checks marked Heuristic are our own plausibility checks, not statements from Google.

    • R1CSV or TSV input (Google also accepts .xls, .xlsx and Google Sheets)(Info)

      Source: S3

    • R2Parameters:TimeZone uses a time zone ID (e.g. America/Chicago) or a + / − 4-digit GMT offset (e.g. -0500), with no quotes(Error)

      Source: S1

    • R3A time zone is set in the Parameters row, in the Conversion Time values, or both(Error)

      Source: S1

    • R4Required headers present: Google Click ID, Conversion Name, Conversion Time(Error)

      Source: S1S3S5

    • R5Header names match Google's template spelling exactly(Error (safe fix: rename))

      Source: S1

    • R6No columns that aren't in the template (custom variables cv:* are allowed)(Warning)

      Source: S1S3

    • R7Each row has a click identifier: GCLID, GBRAID (iOS app) or WBRAID (iOS web). GCLID + GBRAID in one row is allowed since October 3, 2025(Error (no identifier) / Warning (GCLID + WBRAID, GBRAID + WBRAID, or all three))

      Source: S13S9S10S1

    • R8Click ID looks plausible (no spaces, only letters, digits, _ and -, not a URL)(Warning)Heuristic

      Heuristic: Google publishes no click-ID format; this is a plausibility check.

      Source: None (heuristic)

    • R9Conversion Name is present and matches the conversion action exactly (spelling and capitalization)(Error (empty) / Warning (case or spacing variants))

      Source: S1S5S4

    • R10Conversion Time is in one of Google's accepted formats(Error)

      Source: S1

    • R11Slash dates are read as MM/dd — day/month dates are flagged, never guessed(Error)

      Source: S1S7

    • R12Row time zone and Parameters:TimeZone agree(Warning)Heuristic

      Heuristic: Google allows either or both, but doesn't document which wins when they differ.

      Source: S1

    • R13Conversion Time isn't in the future(Warning)Heuristic

      Heuristic: Based on your device clock; usually a time zone or format mistake.

      Source: None (heuristic)

    • R14Conversion Time is within 90 days (63 days for enhanced conversions for leads)(Warning)

      Source: S2S4S5

    • R15Very recent conversions may not be recorded yet(Info)

      Source: S1S4

    • R16Conversion before click can't be checked from the file(Info)

      Source: S4S5S6

    • R17Conversion Value is blank or a plain number(Error / Warning (negative))Heuristic

      Heuristic: The negative-value warning is a heuristic.

      Source: S1

    • R18Conversion Currency is a 3-letter ISO 4217 code(Error (safe fix: uppercase))

      Source: S1S11

    • R19External attribution: Attributed Credit is > 0 and ≤ 1, and Order ID isn't used(Error)

      Source: S1

    • R20Order IDs are unique(Warning)

      Source: S1

    • R21Ad User Data / Ad Personalization are Granted, Denied or blank(Error (safe fix: capitalization))

      Source: S1

    • R22No duplicate click ID + Conversion Name + Conversion Time rows(Warning / Info)

      Source: S1S2S5

    • R23User-provided data (enhanced conversions for leads) columns detected(Warning)

      Source: S1S4S7

    • R24File size within Google's spreadsheet limits (50 MB, 1 million rows)(Warning)

      Source: S8S7

    • R25New conversion actions need 4–6 hours before uploads(Info)

      Source: S1

    Rules last checked:

    Need Google Ads to see your CRM revenue automatically?

    Manual CSV uploads break easily: time zones drift, GCLIDs go stale, and someone forgets to upload. NexaMarTech builds CRM-to-Google-Ads connectors and closed-loop attribution, so qualified leads and closed deals flow back to Google Ads on a schedule, with the right time zones and values. Smart Bidding then optimizes for revenue, not just form fills.

    Book a Consultation

    Want to estimate the payoff first? Try the Marketing Automation ROI Calculator.

    Frequently asked questions

    What columns does the Google Ads offline conversion import template need?

    Google Click ID, Conversion Name and Conversion Time are the core columns. Conversion Value and Conversion Currency are optional, and a Parameters:TimeZone row above the headers sets the time zone. Header names must match Google's template exactly.

    What date and time format does Google Ads accept for Conversion Time?

    Google lists formats such as MM/dd/yyyy HH:mm:ss, yyyy-MM-dd HH:mm:ss, and versions with an offset (2026-08-14T13:00:00-0500) or a time zone ID (2026-08-14 13:00:00 America/Los_Angeles). Set the time zone in the Parameters row, in each time, or both.

    Why does my upload say the conversion happened before the click?

    Usually the time zone is missing or wrong, so conversion times are read earlier than they really were. Add a Parameters:TimeZone row or include offsets in each Conversion Time, then re-upload.

    How long after a click can I upload an offline conversion?

    Google keeps GCLIDs for 90 days, so conversions uploaded more than 90 days after the click won't import. For enhanced conversions for leads the limit is 63 days. Your conversion window setting also applies.

    What happens if I upload the same conversion twice?

    Google deduplicates on click ID, conversion name and conversion time, so the duplicate isn't counted and you'll see a duplicate error for it. To record two conversions for the same click, give each a different conversion time.