> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudx.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Meta Audience Network

> Use this guide to configure Meta Audience Network bidding in CloudX.

Keep using the platform integration guides for SDK installation and ad loading:

* [Android integration guide](/en/android/integration)
* [iOS integration guide](/en/ios/integration)

For iOS-specific Meta adapter requirements, see the [Meta Adapter page](/en/ios/adapters/meta).

## Overview

Use the following values:

* `Meta App ID` in CloudX app mapping
* `Meta Placement ID` in CloudX ad-unit mapping
* CloudX `app_key` and CloudX ad unit identifiers in app code

CloudX collects Meta bidder tokens internally, so you do not need to fetch Meta bidder tokens in your app code.

## Step 1. Complete Meta-side setup in Monetization Manager

1. Sign in to Meta and open Monetization Manager.
2. Add the app or property you want to monetize.
3. Create placements for each format you want to use.
4. Copy the Meta App ID and each Placement ID.
5. Complete Meta review and payout setup before expecting live demand.

Official Meta references:

* [Meta Audience Network getting started](https://business.facebook.com/audiencenetwork/getting-started/)
* [Meta app bidding setup](https://developers.facebook.com/docs/audience-network/bidding/partner-mediation)

## Step 2. Enable Meta in CloudX

Go to `Operations -> Bidder Configuration` and make sure `Meta Audience Network` is enabled for your account.

<img src="https://mintcdn.com/cloudx-928dcb24/mEb6RRvbdMPGyZRg/images/bidders.png?fit=max&auto=format&n=mEb6RRvbdMPGyZRg&q=85&s=a55609ef5c846bdd0632e3b4ecafea11" alt="Bidders" width="2738" height="1567" data-path="images/bidders.png" />

If `Meta Audience Network` is disabled, CloudX will not request bids from Meta even if your mappings are correct.

## Step 3. Configure your CloudX app

Go to `Inventory -> Apps` and create or open the app that matches your mobile application.

| CloudX field  | Value to enter                    | Required |
| ------------- | --------------------------------- | -------- |
| `Meta App ID` | Your Meta Audience Network App ID | Yes      |

<img src="https://mintcdn.com/cloudx-928dcb24/mEb6RRvbdMPGyZRg/images/meta-app-id.png?fit=max&auto=format&n=mEb6RRvbdMPGyZRg&q=85&s=7f48db4480ac91a0856295e3a7233a7c" alt="Meta App ID" width="2764" height="1924" data-path="images/meta-app-id.png" />

Also copy the CloudX `app_key` from the app details page. Use the CloudX `app_key` in Android or iOS code. Do not use the Meta App ID as the CloudX SDK app key.

## Step 4. Configure CloudX ad units

Go to `Inventory -> Apps -> [Your App] -> Ad units` and add the mapping below for each eligible ad unit.

| CloudX field        | Value to enter                                    | Required |
| ------------------- | ------------------------------------------------- | -------- |
| `Meta Placement ID` | The Meta placement ID for that ad unit and format | Yes      |

<img src="https://mintcdn.com/cloudx-928dcb24/mEb6RRvbdMPGyZRg/images/meta-ad-unit-id.png?fit=max&auto=format&n=mEb6RRvbdMPGyZRg&q=85&s=3beb1a0329684ae74c9866033148455d" alt="Meta Ad unit ID" width="2738" height="1567" data-path="images/meta-ad-unit-id.png" />

* Treat `Meta Placement ID` as required on both platforms.
* Match the Meta placement to the CloudX ad-unit format and size.
* For Banner and MREC, use a placement created for the correct size.

## Step 5. Add Meta line items

Create line items for bidder `Meta Audience Network` on each CloudX ad unit where Meta should compete.

<img src="https://mintcdn.com/cloudx-928dcb24/mEb6RRvbdMPGyZRg/images/line-item.png?fit=max&auto=format&n=mEb6RRvbdMPGyZRg&q=85&s=8ac42c9be5634f4a2f9283157e796f96" alt="Line item" width="2738" height="1567" data-path="images/line-item.png" />

* Use bidder `Meta Audience Network`
* Match the line item to the correct ad format
* Repeat the setup for each ad unit where Meta should bid

## Step 6. Finish app integration

Use the CloudX platform guides and the iOS Meta adapter page:

* [Android integration guide](/en/android/integration)
* [iOS integration guide](/en/ios/integration)
* [Meta Adapter page](/en/ios/adapters/meta)

In app code:

* Initialize CloudX with the CloudX `app_key`
* Load ads using CloudX ad unit identifiers
* Do not pass Meta App IDs or Meta Placement IDs into app code
* For Interstitial and Rewarded ads, call `show()` only after the ad is ready

## Step 7. Test and validate

1. Enable test mode for your device in CloudX.
2. Build and run the app with the CloudX `app_key` and the correct CloudX ad unit identifiers.
3. Request an ad from each mapped ad unit.
4. Confirm that the ad loads and that Meta participates or wins where expected.

## Troubleshooting

### Meta is not bidding

Check the following first:

* `Meta Audience Network` is enabled in `Operations -> Bidder Configuration`
* The app has a valid `Meta App ID`
* The ad unit has a valid `Meta Placement ID`
* A `Meta Audience Network` line item exists for the ad unit
* The Meta placement matches the ad format and size

### Meta bids but the ad does not render

Check the following:

* Your app is using the CloudX `app_key`, not a Meta ID
* Your app is loading the intended CloudX ad unit
* Interstitial and Rewarded ads are only shown after they finish loading
* On iOS, the requirements from the [Meta Adapter page](/en/ios/adapters/meta) are complete

### Placement mapping looks correct but Android still fails to load

On Android, missing or empty Meta placement data causes the adapter load to fail. Re-check the ad-unit-level `Meta Placement ID` mapping in CloudX.

### Placement mapping looks correct but iOS behavior is inconsistent

The current iOS adapter can fall back internally in some cases, but you should not rely on that behavior. Always configure `Meta Placement ID` explicitly for every ad unit.

## Mapping Reference

| CloudX field        | Internal key   | Scope   |
| ------------------- | -------------- | ------- |
| `Meta App ID`       | `app_id`       | App     |
| `Meta Placement ID` | `placement_id` | Ad unit |

If you see `audienceNetwork` in internal logs or backend configuration, that refers to the same Meta bidder.
