Developer GuideMigration GuidesFrom Xandr / Microsoft

Migrating from Xandr / Microsoft

Xandr (now Microsoft Monetize) uses OpenRTB and VAST — fully compatible with Praevis. Migration complexity depends on how much custom configuration (deals, floor rules, segment targeting) you have in Xandr.


Concept mapping

Xandr conceptPraevis equivalent
Publisher objectSupply Source
PlacementSupply source (1:1 mapping recommended)
Deal ID / PMPDeal ID
Floor ruleFloor Price CPM (per supply source)
SegmentContent genre / IAB category
Inventory packageInventory Pool
Network / MemberPlatform Partner account
AnalyticsDashboard → Supply

Migration steps

Export your Xandr publisher configuration

From Microsoft Monetize: Publishers → export to CSV. Key fields needed:

  • Publisher name
  • Placement ID
  • Domain or app bundle
  • Current floor CPMs
  • Active deal IDs

Map placements to Praevis supply sources

Xandr uses placements as the primary inventory unit. In Praevis, the supply source is the unit. Recommended mapping:

  • 1 Xandr placement → 1 Praevis supply source (cleanest, easiest reporting)
  • Multiple placements on same domain → 1 supply source with content_genre differentiation (reduces supply source count)

Create supply sources in Praevis

POST /api/supply/sources
{
  "name": "Xandr Placement Name",
  "domain": "com.example.streamingapp",
  "type": "ctv",
  "floor_price_cpm": 4.00,
  "content_genre": "drama"
}

Migrate floor rules

Xandr floor rules can be complex (geo-based, time-based, buyer-based). Praevis uses a single floor per supply source. Simplify:

  • Use your blended average floor from Xandr as the Praevis starting floor
  • Demand sources with Delegate strategies can apply their own bid logic on top

Migrate deal IDs

Private Marketplace (PMP) deals must be re-negotiated with your demand source buyers:

  1. Create deals in Praevis: Supply → supply source → Deals → Add Deal
  2. Agree on a new deal_id string with your buyer (or reuse the same ID if the buyer supports multi-platform deal IDs)
  3. Demand source buyer updates their Delegate strategy or bidder to include the new deal_id condition

Map inventory packages to Praevis pools

Xandr inventory packages group supply sources for targeting. Recreate this as Praevis pools:

  • Create a pool for each major Xandr package
  • Assign equivalent supply sources to each pool
  • Invite the same demand sources who were buyers in the Xandr package

→ Pool management guide

Update app-ads.txt

# Add Praevis
praevis.com, {YOUR_PUBLISHER_ID}, DIRECT

# Keep Xandr during transition
appnexus.com, {XANDR_MEMBER_ID}, DIRECT

What’s different on Praevis

FeatureXandrPraevis
Auction typeSecond-price (historically) / first-priceFirst-price only
Bid timeoutConfigurable (typically 200–300ms)Fixed 150ms
Floor rulesDynamic, multi-conditionStatic per supply source
Segment targetingXandr segment IDsGenre + IAB category
Deal typesPreferred, Fixed Price, PMP, Programmatic GuaranteedPMP (Deal ID)
⚠️

First-price auction: If your demand sources were optimising for Xandr’s second-price dynamics, they’ll need to recalibrate bids for Praevis’s first-price auction. Buyers who overbid in second-price will overpay on Praevis. Notify your demand source partners before going live.