IBM Watson
DirectionSource
Environment
WebiOSAndroid
Capability
Contextual Signal
SDK RequiredYes
Product(s) Required
Core PlatformContextual
IBM Watson delivers contextual targeting capabilities, allowing publishers to serve relevant ads based on on-page content without user identifiers.
Overview
IBM Watson Natural Language Understanding (NLU) analyzes page content and classifies it into standardized categories. Our integration enriches yourPageview events with contextual labels aligned to the IAB taxonomy, with optional advanced NLU signals (e.g. concepts, entities, sentiment) where enabled. This makes it possible to build and activate privacy-safe contextual strategies without user identifiers.
This integration is a Source:
- Source: Permutive enriches
Pageviewevents with contextual classifications from IBM Watson.
- Build contextual cohorts using IAB taxonomy labels (e.g. Sports, News/Politics).
- Apply brand suitability and safety rules by including/excluding categories.
- Power cookie-less targeting by using contextual cohorts across your inventory.
- (Advanced) Use entities, concepts and sentiment for niche, high-intent targeting.
- (Advanced) Standardize contextual labels that can be mapped into downstream activations.
Environment Compatibility
| Environment | Supported | Notes |
|---|---|---|
| Web | Yes | — |
| iOS | Yes | — |
| Android | Yes | — |
| CTV | No | — |
| API Direct | No | — |
Prerequisites
- Permutive SDK: Deployed on your web, iOS, or Android properties where you want content classified.
- Permutive enablement: IBM Watson must be enabled for your workspace by Permutive (quotas and thresholds are configured during enablement).
- Accessible content: Content should be accessible to classifiers. For paywalled or bot-protected pages, configure an allow mechanism (see Setup) so classifiers can fetch full content.
- Classification quota: Ensure your monthly classification quota covers expected volume.
Setup
Enable IBM Watson
Contact your Customer Success Manager (CSM) to enable IBM Watson for your workspace.
Configure classification settings
In the Permutive dashboard, navigate to Contextual > Catalog and locate IBM Watson. Configure your settings including:
- Requested Types: Specify which classification types to request (Categories, Concepts, Emotion, Entities, Keywords, Sentiment)
- Domains: Restrict classifications to specific domains to optimize quota usage. The domains shown are based on what you have defined under Settings > Domains & App names
- Quota: Maximum monthly classification quota, managed by Permutive. Once the quota is reached, no more content will be classified until the next month
- Selective Classifications Threshold: Set a minimum traffic threshold to classify only high-traffic URLs, optimizing quota usage. The default threshold is 20 pageviews within 24 hours before initial classification is triggered
- XPath (IBM Watson specific): Improve classifications by specifying a selector for the article body. This ensures other content like featured articles doesn’t influence classifications. If the XPath does not return any results for a URL, a second classification request is issued without the XPath selector
(Optional) Configure access for paywalled content
If your site uses a paywall or bot mitigation that blocks classifier requests, configure an allow mechanism. Navigate to Contextual > Catalog > Settings and configure a URL parameter (e.g.,
bot-access=true) that will be appended to classification requests. Configure your paywall to allow bypass when this parameter is present. Alternatively, your DevOps team can allowlist traffic based on the Autonomous System Number (ASN) and User-Agent header of Watson requests.Verify enrichment
After enablement, browse several article pages and check in your Permutive dashboard that
Pageview events contain Watson classifications. You can preview classifications by hovering over the IBM Watson tile in the Catalog and clicking “Preview”. Remember that pages must meet the configured threshold before they are classified.Data Types
With IBM Watson enabled, Permutive enriches yourPageview events with contextual data. Permutive automatically updates your event schema to include these properties. The exact schema enabled for your workspace may vary.
Pageview (standard)
Pageview (standard)
Standard enrichment aligned to the IAB taxonomy.
List of category classifications detected for the page. Each object contains:
provider(string, required): “watson”value(string, required): The classification category ID (e.g., “201”). The dashboard uses the taxonomy to display human-readable namestaxonomy(string, required): “iab_2_0”confidence(float, required): Confidence score for the classification (e.g., 0.72)reason(string, optional): Explanation for why this classification was made
Pageview (advanced NLU)
Pageview (advanced NLU)
Additional enrichment fields may be enabled for advanced use cases.
High-level concepts detected in the content. Each object contains:
provider(string, required): “watson”value(string, required): The concept name (e.g., “Social network service”)confidence(float, required): Confidence score from 0 to 1 (e.g., 0.41)
Named entities detected in the content. Each object contains:
provider(string, required): “watson”value(string, required): The entity name (e.g., “Thomas J. Watson”)confidence(float, required): Confidence score from 0 to 1
Important keywords detected. Each object contains:
provider(string, required): “watson”value(string, required): The keyword phrase (e.g., “curated online courses”)confidence(float, required): Confidence score from 0 to 1
Sentiment analysis for the content. Each object contains:
provider(string, required): “watson”value(string, required): The sentiment label (e.g., “positive”, “neutral”, “negative”)confidence(float, required): Confidence score from 0 to 1
Troubleshooting
Page not classified (no labels present)
Page not classified (no labels present)
Confirm the URL has met the minimum traffic threshold for classification.
The default threshold is 20 pageviews within 24 hours. Low-traffic or newly published pages may classify later. Contact Permutive Support to check if a specific URL has been classified or to verify your threshold configuration.
Monthly classification quota reached
Monthly classification quota reached
If your monthly quota is reached, new URLs will not be classified until the next
month. Contact your Customer Success Manager to review quotas.
Paywall or bot protection blocking classification
Paywall or bot protection blocking classification
Classifier requests must be able to fetch the full article HTML. Configure your paywall to allow bypass using a URL parameter (e.g.,
bot-access=true). Set this in the Permutive dashboard under Contextual > Catalog > Settings, then configure your paywall system to allow access when this parameter is present in the URL. Alternatively, your DevOps team can allowlist Watson traffic based on the Autonomous System Number (ASN) and the User-Agent header.Inaccurate or unexpected category assignment
Inaccurate or unexpected category assignment
Check that the page has sufficient on-page text and a correct canonical URL.
Where needed, review advanced NLU signals or retest after content updates.
Changelog
For detailed changelog information, visit our
Changelog.