Conversions for some advertisers start online and finish offline. For example, a consumer starts researching online for a purchase, clicks on an ad, and then telephones a call center to complete the purchase. These types of conversions are called offline conversions. Offline conversion diagnostics helps you understand and monitor issues with your conversion uploads or edits when using the Campaign Manager 360 API.
On this page
- How it works
- Check offline conversion diagnostics
- Types of status under Diagnostics
- Types of diagnostic errors and their meaning
- Best practices for offline upload data
How it works
After you've gathered the offline conversion data, you can upload them with any one of the following techniques:
- Note: The offline diagnostics discussed in this article are only available for users of the Campaign Manager 360 Conversion API.
Learn more About uploading offline conversions , and editing offline conversions via the Campaign Manager 360 API .
You can view the status of the conversion action and additional details like diagnostics metrics. Hover over the 'Status' column of the conversion action and you should be able to view a dialogue box. The dialogue box contains details such as 'Needs attention', 'Recording conversions', and 'Improve data quality' and many others. You should be able to view the 'Go to diagnostics' prompt, along with these messages for conversion actions that have uploaded offline conversion via the Campaign Manager 360 Conversion API.
To check the accuracy of the offline conversions data upload, the 'Diagnostics' page can be helpful. The 'Diagnostics' page gives you an overview of the quality of the data uploaded and error messages.
Check offline conversion diagnostics
- Sign in to your Search Ads 360 account.
- Navigate to a sub-manager account .
- Under "Tools & settings" in the navigation panel on the left, select Conversions.
- Select Summaryand select the Diagnosticstab.
- In the “Offline conversion” card, select See details.
- The Diagnostics page appears.
- The conversions that need attention will be displayed in the 'Needs attention' card.
- The history of conversion actions will be displayed in the 'History' card.
- The last card displays the conversion actions that are active and fully optimized.
- The 'Status' column should show the conversion action status ('Active', 'No recent conversions', 'Needs attention', and many more).
- Note: To check the 'Diagnostics' page, hover over the status column under the conversions.
Types of status under Diagnostics
| Status | Color | Label | Description |
| Green | Active and optimal | Your offline data setup is active and optimal for downstream processing. | |
| Blue | Active with improvements available | Your offline setup is active, but there are further improvements you could make. | |
| Yellow | Active with major errors | Your offline setup is active, but there are errors that require your attention. | |
| Red | Not received data in the last 2 days | Your offline setup hasn't received data in the last 2 days, there may be something wrong. For optimal bidding performance, ensure you're uploading conversions on a regular basis. It's a best practice to upload at least once a day. |
The 'Diagnostics' page gives you an overview of the offline uploaded data with its status, alerts, messages, and graphs. You can check the status (such as 'Needs attention', 'No recent conversions', 'Good' and 'Excellent'), along with alerts that include a description and percentage breakdown for the same. Expand alerts to check the detailed description and fix the error accordingly.
Another part of the 'Diagnostics page' is the 'History' section, which is explained through graphs. You can select the dates from the dropdown (for example, for the last 7 days). The graphs consist of bars with 2 colors:
- Blue bar: Successfully imported event
- Red bars: Events with error
Types of diagnostic errors and their meaning
The table below will help with making sense of the diagnostic error message you view in the UI. This list may change over time.
Check that your data source includes the correct identifiers.
Each Conversion event should include exactly one identifier from this list .
This error is specific to edits, as opposed to inserts.
The conversion you are trying to modify could not be found. This means the conversion you’re attempting to modify either does not exist or the provided details are incorrect.
Ensure your data source is set up to include the correct identifiers.
If you're uploading conversions with a gclid, ensure that the gclid is unmodified (not truncated, or case-converted). Ensure that the FL Activity ID, Configuration ID, Ordinal, and timestampMicros are all accurate.
If you’re uploading with a match_id, ensure that the online tag is properly sending the match_id, the uploaded conversion is within 60 days of the tag fire containing the match_id, and that you've waited at least 2 hours after the tag fire with the match_id to upload or edit the offline conversion.
Ensure your data source is set up to include correct identifiers.
If you're uploading conversions with a gclid, ensure that the gclid is unmodified (not truncated, or case-converted), and the gclid value is known to SA360. This can be done via the gclsrc parameter that came through with the click. Ensure the value of that string contains "ds".
If uploading with a match_id, ensure that the online tag is properly sending the match_id, the uploaded conversion is within 60 days of the tag fire containing the match_id, and that you've waited at least 2 hours after the tag fire with the match_id to upload or edit the offline conversion.
In general, this is an error type that you should retry. You can consider implementing code to catch this error type, and automatically retry the conversion event at a later time.
Typically, if your code waits at least an hour after the click event, you shouldn't hit this error, but occasionally it can take longer, so retrying is a good process to handle these.
Conversions too old for update
Imported events can't be recorded because conversions over 28 days old can't be updated.
Ensure you're updating recent events by logging details around click time and conversion time. This can allow you to write more robust code to handle these cases.
Choose a single identifier type for each conversion upload. Review the API documentation for more information.
Each Conversion event should include exactly one identifier from this list .
Verify your account settings and ensure you've completed all the necessary steps to activate this feature.
Review the documentation here for more information.
Include at least one of these fields: hashed email (preferred), hashed phone number, or hashed address in each UserIdentifier you submit.
Ensure that the data has been correctly hashed using the SHA256 algorithm before submitting it as a user identifier.
This is currently the only hashing algorithm that's supported for this purpose, and the one that must be used to ensure matching works.
Ensure that the address is correctly formatted and includes all required information.
Refer to the API specification here as needed for information on formatting of address information.
Verify that the ID is correct and that the configuration has been properly set up.
Reach out to SA360 or CM360 support if you need help validating this.
Encrypted user ID: Update not supported
The only fields that can be edited in a batchupdate call to the API are Quantity, Value, or the value of a Custom Floodlight Variable.
Updating the Encrypted User ID isn't supported. Modify your code as needed to refrain from doing this.
The only fields that can be edited in a batchupdate call to the API are Quantity, Value, or the value of a Custom Floodlight Variable.
Updating the Child-Directed Treatment field isn't supported. Modify your code as needed to refrain from doing this.
Check here for more details.
The only fields that can be edited in a batchupdate call to the API are Quantity, Value, or the value of a Custom Floodlight Variable.
Updating the Encrypted User ID isn't supported. Modify your code as needed to refrain from doing this.
Check here for more details.
The only fields that can be edited in a batchupdate call to the API are Quantity, Value, or the value of a Custom Floodlight Variable.
Updating the Ad User Data Consent field isn't supported. Modify your code as needed to refrain from doing this.
Check here for more details.
One or more required fields are currently incomplete.
Ensure all required information is provided:
- Item ID
- Quantity
- Unit Price
For optimal bidding performance, ensure you're uploading conversions on a regular basis. At least daily uploads are a best practice.
Include conversions in each upload of the day with the same lookback window since we're looking at original click time and uploaded conversion time.
Data adjustment records are inconsistent. Consistency rate does take into account the upload frequency and the timestamp of the adjusted conversion that's connected to the original click time.
While we don't recommend updating data used for automated bidding (versus inserting a "new" conversion with the details), consistency in adjustments can be important for reporting purposes.
Depending on the reason you adjust conversions, this may or may not be a resolvable "error", but if in doubt, discuss with your developer team who authored the code for the CM360 Conversion API.
Best practices for offline upload data
Uploading the data on a regular basis might help to check the performance and bid accordingly for accurate results.
- Upload frequently: Uploading data frequently can help systems that depend on it like bid opt. If you can stream data or upload multiple batches per day, that can help ensure these systems are best set for success. If your system can't do that, try to at least upload a batch of conversions per day. Set up alerts or automated processes to indicate any missed uploads.
- Timestamp validation: Implement a check to ensure that the timestamps of uploaded conversions fall within the acceptable lookback window from when the conversion occurred. The ideal size of this window will depend on your business model.
- Standardized upload procedures: Create a well defined process for conversion uploads. This includes consistent formatting, pre-upload data cleaning, and error checks.
- Monitor trends: Track your consistency metric over time. Look for patterns of inconsistency and proactively investigate the reasons behind them.
- Refine lookback window: Analyze your data to determine if your current lookback window is optimal. Adjust if needed, keeping in mind your business goals and typical conversion timeframes.

