Personalization and relevance: how Maya ranks every feed

Maya is the relevance engine that decides which video a placement shows to a viewer, and it is measured on two numbers: per-minute watch time per user across the destinations it powers, and per-minute revenue it generates for the customer. Reading time about 6 minutes.

Signals Maya uses, in priority order

  1. Placement context from the grid (see Register your placements on the Hierarchical Grid) and live page context from the embed (see Onsite: contextual placements across homepage, category, and product pages).
  2. Group and topic of each video (see Brand communities and groups: structure content for relevance), including partner content you accepted (see Accept partner content into your ecosystem).
  3. Session continuity: what this viewer watched and did earlier in the session and, with auto login, in past sessions.
  4. Audience cohorts: onsite, offsite, and offline signals you connect (see Audience segments: onsite, offsite, and offline signals), always under the data-use terms in your agreement (see Choose your monetization agreement) and the privacy controls in Privacy and VPPA: the two-channel data flow.
  5. Brand and partner rules: brand safety profile, exclusions, pinned content, and Paid Partner Post pacing (see Paid Partner Posts and Paid Partner Takeovers).

Parameters you control (under Controls → Feed settings, per placement or page type)

ParameterWhat it does
Exploration rateHow often Maya tests new or low-data videos
Freshness weightPreference for recent content
Repeat windowMinimum time before a viewer sees the same video again
Pinned slotsFixed positions for brand or partner content
Cohort useWhich connected cohorts Maya may use on this placement
Paid pacingMaximum share of Paid Partner Posts per session

Reading relevance

Relevance OS (see Relevance OS: reading the analytics dashboard) treats relevance as the leading indicator of revenue and shows, per placement, the lift in watch time Maya produced against a holdout, so you can see whether a parameter change helped before revenue moves.

How it runs

The placements, feeds, destinations, and identity settings described here are proposed from your grid and audience, applied on confirmation, and tuned on a cadence from the reports.

Support. Help is available 24/7 from Brand Control Center and from every page of these docs. Ask in plain language; when a person is needed, an account manager, developer, or Ops engineer joins the same thread and stays on it until it is resolved. Every Business Account owner has this on every plan (see 24/7 Octo-enabled support: how Octo brings in account managers, developers, and Ops).

API & SDK

Access: the calls in the table are the proposed Business Account API (see Business Account API: provisioning, OAuth, and the resource map), authenticated with a key scoped to the account and a role or an OAuth client acting for it; every confirmation in this article becomes a proposal you can approve by API (POST /proposals/{proposalId}:approve). Live today, the server API under /api/thirdparty authenticates with a gn-access-token (see Generate an access token), and Live API today and the Business Account API roadmap maps what is live to what is proposed.

CallPurpose
PUT /placements/{placementId}/settingsPlayer controls, feed settings, sticky mini-player, keywords, mode
GET /brands/{brandId}/segmentsAudience segments from onsite, offsite, and offline signals
GET /reports/relevanceRelevance OS dashboard data
js
js
// proposed server SDK (Business Account API)
import { Genuin } from '@genuin/sdk';
const genuin = new Genuin({ apiKey: process.env.GENUIN_KEY });
await genuin.placements.settings.update(placementId, { sticky: true });
await genuin.segments.list(brandId);
await genuin.reports.relevance({ brandId });

Live today: Embed the Genuin Web SDK on your website · Add a Genuin placement to your website · Customize the Genuin video player · Receive engagement events in your own analytics.

SDKs: Web SDK 2.0.6 (see Embed the Genuin Web SDK on your website), iOS SDK 2.1.5 (see Integrate the Genuin iOS SDK), Android SDK 2.1.5 (see Integrate the Genuin Android SDK), React Native 3.0.3 (see Integrate the Genuin SDK with React Native apps), and Flutter (see Integrate the Genuin SDK with Flutter apps) render Genuin and sign members in; the Node (@genuin/sdk) and Python (genuin) server SDKs are proposed with Business Account API: provisioning, OAuth, and the resource map.

TRUST AND COMPLIANCE

© 2026 Genuin Inc.

Genuin Footer