Upgrade your call conversion uploads from the Google Ads API to the Data Manager API to
gain access to several improvements and features.

Here's a comparison between using the Data Manager API and the Google Ads API to manage
call conversions.

|   | Data Manager API | Google Ads API |
|---|---|---|
| Caller phone number hashing | Uses SHA-256 hashed phone numbers in [`UserIdentifier.phone_number`](https://developers.google.com/data-manager/api/reference/rpc/google.ads.datamanager.v1#useridentifier). Yes | Uses unhashed phone numbers in [`caller_id`](https://developers.google.com/google-ads/api/reference/rpc/latest/CallConversion#caller_id). No |
| Data model | Unified data model across all Google Ads conversion use cases and all Google advertising products. | Data model is only for Google Ads use cases, and differs for each use case. |
| Quotas and limits | Project-based [quotas and per-request limits](https://developers.google.com/data-manager/api/devguides/limits). | Project-based [quotas](https://developers.google.com/google-ads/api/docs/api-policy/access-levels) and [per-request limits](https://developers.google.com/google-ads/api/docs/best-practices/quotas#conversion-upload-service). |
| Error model | Uses a [fast-fail model](https://developers.google.com/data-manager/api/devguides/concepts/understand-errors#fast-fail). | Uses a [partial failure model](https://developers.google.com/google-ads/api/docs/best-practices/partial-failures). |
| Duplicate call conversions | Accepted without an error. Google Ads deduplicates call conversions after they're processed. | Rejected with a [`CALL_CONVERSION_ALREADY_EXISTS`](https://developers.google.com/google-ads/api/reference/rpc/latest/ConversionUploadErrorEnum.ConversionUploadError#call_conversion_already_exists) error. |