# Ranking Profiles

**Last Updated:** 2026-02-19
**Confidence:** High

## Summary

Ranking profiles are named, versioned scoring functions declared in schema. They reference signals, relationship weights, recency curves, and diversity rules. Profiles live in the database, are versioned alongside data, and can be swapped at query time by name.

**Key Facts:**
- Profiles are schema-level declarations, not application code
- Each profile defines: primary signals, secondary signals, boosts, gates, and diversity rules
- The same profile can operate on different candidate sets (global vs category vs social graph)
- Profiles are versioned — old versions remain queryable

**File Pointer:** `VISION.md:43-55`

## Built-in Profiles

| Profile | Primary Signal | Use Case |
|---------|---------------|----------|
| `for_you` | preference_match + engagement_velocity | Personalized feed |
| `search` | text_relevance + semantic_similarity | Search results |
| `trending` | share_velocity + view_velocity | Trending surfaces |
| `rising` | velocity relative to baseline, age-boosted | Breakout content |
| `following` | created_at DESC | Subscription feed |
| `related` | semantic_similarity + collaborative_filtering | Up next / related |
| `browse` | quality_score (completion + like_ratio + reach) | Category pages |
| `hot` | score / (age + 2)^gravity | Community frontpages |
| `controversial` | max(positive * negative signals) | Debate surfaces |
| `hidden_gems` | high quality, inverse reach | Discovery |
| `notification` | relationship_strength + item quality | Push prioritization |
| `live` | relationship_weight + viewer_count | Live surfaces |

## Related Topics
- [Signals](./signals.md)
- [Query Language](../features/query-language.md)
- [Sort Modes](../features/sort-modes.md)
