Overview
Custom Audiences allow you to reach specific viewers based on data unique to your business, product, or service. We support Customer List Audiences, built directly from:
- File Format: .csv or .txt
- Max File Size: 25MB
-
Accepted Customer Identifiers (one type per list):
- Emails
- IP Addresses
- Connected TV IDs
- Mobile Ad Ids
- List Formatting: Single column of at least 1,000 unique entries of the same type, no header, duplicates or empty rows
For maximum control, you can select to include or exclude the custom audiences you upload within an ad set.
Please note: The customer list audiences cannot be mixed. For example: you must upload a customer email list separate from an IP Address list. Please ensure your file has 1,000 valid unique records that follow the formatting rule of one record per row and no headers.
Use of custom audiences is subject to Universal Ads Custom Audience Terms.
Uploading Hashed Audiences
You can now use hashed email addresses and phone numbers to create custom audiences in Universal Ads. Hashed identifiers allow you to activate your first-party customer data with privacy in mind.
Good to Know
- Universal Ads supports SHA-256 hashed email addresses and phone numbers.
- Identifiers must be normalized before hashing.
- Hashes that are generated without proper normalization may upload successfully but will not match customer records.
- Hashes must be provided as 64-character lowercase hexadecimal values.
- Universal Ads does not accept salted, double-hashed, or non-SHA-256 hashed values.
Supported Identifier Types
You can upload the following identifier types when creating a custom audience:
| Identifier Type | Format |
| Email Address | Plain-text email |
| Hashed Email Address | SHA-256 hash of a normalized email |
| Hashed Phone Number | SHA-256 hash of a normalized E.164 phone number |
Hashed Email Requirements
Before generating a hash, normalize each email address using the following steps:
- Remove leading and trailing spaces.
- Convert all characters to lowercase.
- Convert supported special characters:
- ß → ss
- ä → ae
- ö → oe
- ü → ue
- ø → o
- æ → ae
- Remove email tags using the "+" format.
- Example:
jane.doe+promo@example.combecomesjane.doe@example.com
- Example:
- Remove unsupported characters.
- Keep exactly one
@character. - Generate an unsalted SHA-256 hash.
Example
| Original Email | Normalized Email |
| Jane.Doe+promo@Example.com | jane.doe@example.com |
| Jörg.Müller@Example.de | joerg.mueller@example.de |
Hash Format Requirements
Hashed email values must:
- Use SHA-256
- Contain exactly 64 characters
- Use lowercase hexadecimal characters only (
0-9,a-f) - Be hashed once
- Not be salted
Valid format:
Plain Text
[0-9a-f]{64}
Hashed Phone Requirements
Phone numbers must be converted to E.164 format before hashing.
Normalize Phone Numbers
- Remove spaces, parentheses, dashes, and periods.
- Add the country code with a leading
+. - Remove any national trunk prefix when required.
- Generate an unsalted SHA-256 hash of the complete E.164 value, including the
+.
Example
| Original Phone | Normalized Phone |
| (212) 555-1234 | +12125551234 |
| 020 7946 0958 | +442079460958 |
Important
When hashing phone numbers:
- Include the leading
+ - Include the country code
- Use SHA-256 only
- Output lowercase hexadecimal values
- Do not salt or double-hash values
Prepare Your Upload File
When creating a custom audience:
- Place one hashed value per row.
- Upload hashed values in the appropriate hashed email or hashed phone column.
- Do not mix plain-text and hashed values in the same column.
- Remove duplicate rows whenever possible.
- Ensure files do not contain blank rows or hidden whitespace.
Correct Upload Example
Plain Text
hashed_email
86e0b9e56c17cc4d12387e1949b85053fbe73bc3ce5a1188713a9d300cc6133d
b1fda88518f26607781ce777ebf23132af167ab2e03291664361cd24e0fdecde
Common Mistakes
Do not generate a single hash for the entire file.
Each individual email address or phone number must be normalized and hashed separately.
Best Practices
- Normalize all identifiers before hashing.
- Verify that hashes are lowercase hexadecimal values.
- Validate a small sample before uploading a large audience.
- Use consistent formatting across all uploaded records.
- Store original customer data securely and separately from uploaded audience files.
Following these practices can help improve audience match rates and reduce upload errors in Universal Ads. Use of custom audiences is subject to Universal Ads Custom Audience Terms.
FAQ
My audience uploaded successfully but has a low or zero match rate.
This is typically caused by normalization issues before hashing.
Common causes include:
- Email address was hashed before converting to lowercase
- Email tags (
+promo) were not removed - Special characters were not normalized
- Phone number was hashed without the country code
- Phone number was hashed without the leading
+ - Values were hashed more than once
Because the uploaded hashes are technically valid, these issues may not generate an upload error but can significantly reduce match rates.
Why was my file rejected?
Your file may be rejected if:
- Values are not valid SHA-256 hashes
- Hashes are not exactly 64 characters long
- Hashes contain uppercase letters
- Plain-text and hashed identifiers are mixed in the same column
- File formatting requirements are not met
Which hashing algorithm should I use?
Use SHA-256 only.
Other algorithms, such as MD5 and SHA-1, are not supported.
Up Next: