Skip to content
Adrythm

How-to

Upload offline conversions to Google Ads from a spreadsheet or CRM

Updated October 11, 2026

30 minutes for the first file

Create the import conversion action first and wait 4 to 6 hours. Fill Google's template with each sale's click ID, the exact action name, the conversion time with its time zone and a value, then upload it under Goals, Conversions, Uploads. Conversions are filed under the ad click's date, and only clicks from the last 90 days count.

Before you start

  • Click IDs saved with your leads. Each sale needs the GCLID from the ad click that brought the lead. To match sales by email or phone (enhanced conversions for leads), Google says to use a Data Manager file rather than this legacy upload.
  • An export from your CRM or sales records with the click ID, the date and time of each sale and its value, as a CSV, Excel file or Google Sheet.
  • Access to the Google Ads account that manages your conversions. With cross-account conversion tracking, that is the manager account.

Create the action before anything else

Google can only import conversions into an action that already exists, and a new action needs a few hours before its first upload.

  1. In Google Ads, open Summary in the Goals menu and click + Create conversion action.
  2. Choose the option for conversions you import, which Google's pages call Conversions offline or Import, then CRMs, files, or other data sources, and choose conversions from clicks.
  3. Name the action plainly, such as Closed sale. Every row of every file must repeat that name with the same spelling and capitalization.
  4. Finish the setup and note the time. Google says to wait 4 to 6 hours before uploading to a new action; conversions sent sooner may take 2 days to appear.

If you are only starting to collect click IDs, create the action first. Google's setup page says early conversions cannot be imported if the action did not exist yet.

Fill in the template

Google rejects files whose headers, action names or times do not match its template, so start from its file rather than your own.

  1. Open Goals, then Conversions, then Uploads, click the plus button and select View templates, where Google lists its upload templates, and download the conversions from clicks template.
  2. Set the time zone in the Parameters:TimeZone row with a time zone ID, such as America/Chicago, which Google recommends over a GMT offset because it handles daylight saving.
  3. Add one row per sale: Google Click ID, Conversion Name, Conversion Time, Conversion Value and Conversion Currency, with Order ID if your records have one. Leave Conversion Value blank only if the action's default value should apply.
  4. Keep the Google Click ID column and add no columns of your own. Google says removing that column will make the import fail, and extra or mismatched columns are a common cause of upload errors.
  5. Include the previous day's sales again in each file. Google may not record a conversion made within a day of its click on the first try, and it does not count a true duplicate twice.

Upload, preview and apply the file

The upload screen lets you preview errors before anything is applied, which is where most first files fail.

  1. Open Goals, then Conversions, then Uploads, and click the plus button.
  2. In Source, choose Upload a file or Google Sheets, then click Choose file and select it.
  3. Click Preview, then Details to read any errors. Fix them in the file and upload it again rather than applying a file with errors.
  4. Click Apply file.
  5. To repeat this from a CRM export kept online, open Schedules on the Uploads page, click the plus button, choose Google Sheets, HTTPS or SFTP, set Frequency and Time, and click Save & preview.

Google labels file uploads legacy and recommends importing through Google Ads Data Manager, under the Tools icon, which can import from files, Google Sheets and CRMs such as Salesforce and HubSpot.

Check it worked

On the Uploads page, the file's Status and Results columns say whether its conversions imported, and Download errors lists rows that failed with a reason. Allow 24 to 48 hours for processing.

Then open Campaigns, add All conv. (by conv. time) and set the date range to cover the sale times in your file, which Google recommends for checking that an import worked. The standard Conversions column files each sale under its ad click's date, so to see it there, set the range to cover the clicks. A sale whose click was more than 90 days ago, or outside the action's conversion window, is refused as too old. If the file shows as imported and the conversions still do not appear after two days, work through the checks for missing offline conversions.

Several sales from one ad click

Google counts a conversion with the same click ID, action name and time once. To record several sales from one click, give each row its own conversion time and set the action's Count to Every; with One, Google reports only one and discards the rest.

Sales that close after 90 days

Google imports a sale only if it is uploaded within 90 days of the ad click. If your sales take longer, upload an earlier step that happens inside the window, such as a qualified lead or a signed quote, and keep the closed sale for your own reports.

Still have a question this page did not answer?

Ask it on a call. Thirty minutes, a straight answer, and no follow-up sequence if you decide not to work with us.