Microsoft Ads offline conversions let you feed phone calls, in-person sign-ups and deals closed by your sales team back into the platform – connecting offline sales to the paid clicks that drove them.
Here’s the problem.
You export your data, format the CSV, upload it and it gets rejected. No useful error message. No obvious reason. The Microsoft documentation tells you which columns to include but doesn’t warn you about the formatting quirks that silently kill the upload.
There’s a fix. Several, actually.
What Are Microsoft Ads Offline Conversions?
Microsoft Ads offline conversions connect sales that happen off your website back to the paid clicks that drove them.
When someone clicks your advert, Microsoft generates a unique Microsoft Click ID (MSCLKID) and appends it to the URL. If that person later converts – over the phone, in person, through your sales team – you upload a CSV referencing that click ID. Microsoft matches it back to the original click and attributes the conversion to the right campaign, keyword, and audience.
There are two versions. Regular offline conversions match using the MSCLKID. Enhanced offline conversions match using a hashed email address or phone number instead – useful when you can’t always capture the click ID.
Why Microsoft Ads Offline Conversions Matter
Most B2B and service businesses don’t convert on the website. Someone clicks your ad, fills in a contact form, and signs a contract two weeks later. Without offline conversion tracking, Microsoft Ads sees zero conversions from that campaign and your bidding strategy optimises accordingly.
That means three things go wrong:
Smart Bidding trains on the wrong signal. Target CPA and Target ROAS optimise toward whatever conversions they can see. If that’s only form fills and not actual sales, you’re paying more for leads that don’t close.
Your reporting undervalues paid search. Campaigns driving real revenue look like they’re not working. Budget gets cut from things that are actually performing.
You can’t optimise toward what makes money. With Microsoft Ads offline conversions flowing back into the platform, you can see which keywords and audiences drive real sales – not just clicks.
If your business closes deals offline, this isn’t optional.
How to Set Up Microsoft Ads Offline Conversions
Three stages: capture the click ID, create the conversion goal, upload the data.
Stage 1: Capture the MSCLKID
- In Microsoft Advertising, go to Account Settings
- Under Tracking, enable Auto-tagging
- Save
This appends the MSCLKID to every URL your ads send traffic to. You then need to capture that parameter on your landing page and store it alongside the lead – in your CRM, your form database, wherever your lead data lives. Most CRMs support hidden form fields; use one to record the MSCLKID at point of submission.
Without this, you’ll have no click IDs to match against when you upload.
Stage 2: Create an Offline Conversion Goal
This is the step most people skip, and it’s why most uploads fail.
- Go to Tools – Conversion tracking – Conversion goals
- Click + Create conversion goal
- Select Offline conversions
- Name your goal – write it down exactly, including capitalisation
- Set a value if applicable, then Save
The name in your CSV must match this character for character. One wrong capital letter and the upload fails silently.
Stage 3: Build Your CSV and Upload
See the formatting guide below. Once the file is ready, go to Tools – Conversion tracking – Upload offline conversions.
Microsoft Ads offline conversions take 2-3 hours to appear in reporting. Always check the upload history for row-level errors – a file can be accepted overall while individual rows get quietly dropped.
What Microsoft Actually Requires
Microsoft provides a template but it’s easy to misread. Your file needs three things in the right order.
Row 1: The Parameters Row
The very first line must be:
Parameters:TimeZone=+0100
Replace +0100 with your UTC offset. UK BST is +0100, UK GMT is +0000. This tells Microsoft how to read every timestamp in the file. If it’s missing, the upload fails.
Row 2: Column Headers
Copy these exactly – they’re case-sensitive:
Conversion Name, Conversion Time, Conversion Value, Conversion Currency, Microsoft Click ID, Hashed Email Address, Hashed Phone Number
Microsoft Click Id (lowercase ‘d’) will be rejected. Microsoft Click ID won’t. Same data, different result.
Row 3 Onwards: Your Data
One conversion per row. Conversion Time is date and time only – no time zone here, that’s already handled by Row 1.
A complete, working file looks like this:
Parameters:TimeZone=+0100
Conversion Name,Conversion Time,Conversion Value,Conversion Currency,Microsoft Click ID,Hashed Email Address,Hashed Phone Number
Missed Leads,06/01/2026 10:00,,GBP,f8bc78e7f9701acc41b412cc30321603,,
Missed Leads,06/12/2026 09:00,,GBP,e35054c9278b1e8170973ed4775e5e66,,
Save as .csv. Don’t open and re-save in Excel – it reformats dates and breaks the file.
What to Avoid When Uploading Microsoft Ads Offline Conversions
No matching conversion goal. Your file references a goal that doesn’t exist or the name doesn’t match. Create the goal first, copy the name exactly.
Missing Parameters row. If your file starts with the column headers, Microsoft can’t read the timestamps. Upload rejected.
Time zone in the Conversion Time column. The time zone goes in Row 1 only. Values like 06/01/2026 10:00 +0100 in your data rows will cause rejections.
Wrong capitalisation on column names. Microsoft Click Id is not the same as Microsoft Click ID.
Extra columns. Microsoft explicitly says don’t add them. Strip anything that isn’t in the template.
Dates reformatted by Excel. Check your file in Notepad before uploading.
Click IDs older than 90 days. These get silently dropped even if the file is accepted.
FAQ
Why is my file accepted but no conversions are showing? Check the upload detail report under Tools – Conversion tracking – Upload history. Individual rows may have been rejected. Most common causes: click IDs older than 90 days, or the goal name not matching.
Can I upload Microsoft Ads offline conversions for multiple goals in one file? Yes. Use different names in the Conversion Name column. Each must match a goal that exists in your account.
What time zone should I use? The one that matches your timestamps. UK businesses use +0000 (GMT, October-March) or +0100 (BST, March-October). Don’t mix time zones in one file.
Can I re-upload a rejected file? Yes. Fix the issues and upload again. Microsoft won’t double-count the same MSCLKID and conversion time – but check the upload history to confirm.
Do I need to upload every time I get a conversion? No. Batch them and upload weekly. Just don’t let conversions go past 90 days.
Can I automate this? Yes. Microsoft’s API supports automated offline conversion uploads. Worth setting up if you’re processing conversions regularly.
That’s It
Create the conversion goal first. Add the Parameters row at the top of your file. Match the column headers exactly. Keep the time zone out of the data rows.
Most Microsoft Ads offline conversion rejections come down to one of those four things. Fix them and your upload should go through cleanly.
Running Microsoft Ads and need help with conversion tracking? Get in touch – we manage paid search campaigns and conversion tracking setup for UK businesses.
Ready to grow your business?
We handle digital marketing, web development and data analytics for UK businesses.

