Audience Upload Overview
Microsoft Advertising allows you to upload customer data to create Custom Audiences for remarketing and customer match. There are two methods: API upload and file upload.
Method 1: API Upload
Best for automated, real-time audience updates.
Prerequisites
- Microsoft Advertising developer token
- OAuth 2.0 authentication setup
- Customer data in supported format (email, phone, user ID)
API Process
- Authenticate with OAuth 2.0
- Create a new audience list via API
- Upload customer data (hashed for privacy)
- Monitor upload status and processing
# Pseudocode for API upload
client = BingAdsClient(credentials)
audience = client.create_audience(
name="Holiday Customers 2023",
description="Customers who purchased during holiday season",
membership_duration=540,
scope="Account",
parent_account_id=account_id
)
client.upload_audience_data(
audience_id=audience.id,
data=customer_data_hashed,
format="Email"
)
Method 2: File Upload
Best for one-time or periodic manual uploads.
File Format
| Column | Description | Required |
|---|---|---|
| SHA-256 hashed email address | One of Email/Phone/Member ID | |
| Phone | SHA-256 hashed phone number | One of Email/Phone/Member ID |
| Member ID | Your internal customer ID | One of Email/Phone/Member ID |
| First Name | SHA-256 hashed first name | Optional (improves match rate) |
| Last Name | SHA-256 hashed last name | Optional (improves match rate) |
Upload Steps
- Prepare CSV file with hashed customer data
- In Microsoft Advertising, go to Tools → Audiences
- Click "Create audience" → "Customer match"
- Upload your CSV file
- Select data type and membership duration
- Click "Upload and create"
API vs File Upload Comparison
| Aspect | API Upload | File Upload |
|---|---|---|
| Automation | Full automation possible | Manual process |
| Update Frequency | Real-time | Up to once per day |
| Max Records | Batch processing | Up to 500K per file |
| Technical Skill | Developer required | No coding needed |
| Best For | Large-scale, frequent updates | Small lists, one-time uploads |
Data Hashing Requirements
Customer data must be SHA-256 hashed before upload:
- Convert to lowercase
- Remove leading/trailing whitespace
- SHA-256 hash the value
- Upload as hex string
Related: For Bing Ads API setup, see Bing Ads API Token Guide. For Google's equivalent feature, check Search Ad Audience Solutions (Customer Match section).