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

# Profiles / Who’s Watching

> Viewer profiles in Streamly — viewer_profiles table, streamly_viewer_profile cookie, and manage routes.

After a viewer signs in, Streamly can require a **Who’s Watching** selection before catalog routes.

## Concepts

| Concept               | Storage                                   |
| --------------------- | ----------------------------------------- |
| Platform user row     | `profiles` (`is_operator`, onboarding, …) |
| Watching profile      | `viewer_profiles`                         |
| Active profile cookie | `streamly_viewer_profile`                 |

Do not confuse `profiles` (account) with `viewer_profiles` (OTT profiles).

## Routes

| Path               | Purpose                |
| ------------------ | ---------------------- |
| `/profiles`        | Pick a profile         |
| `/profiles/manage` | Create / edit profiles |

Middleware forces `/profiles` when a viewer is logged in without an active profile. Exempt: auth routes, admin, API, dashboard, marketing/legal.

## Operator tip

Avatars use the storage bucket introduced in migration `015_viewer_avatars_bucket.sql`.

## Related

* [Viewer Profiles](/viewer/profiles)
* [Authentication Flow](/authentication/authentication-flow)
* [Storefront Overview](/viewer/storefront-overview)
