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

# Page event

> Reference for the page view event that records web and mobile screen visits, with auto-collected browser properties and unified cross-platform tracking.

The `page` event records whenever a user views a page on your website or a screen in your mobile app. Both the [web SDK](/sdks/web) and [mobile SDK](/sdks/mobile) emit `page` events with `channel` set to `"web"` or `"mobile"` respectively.

On web, page properties are automatically collected from the browser. On mobile, the screen name is mapped to page-equivalent fields (`page_title`, `page_path`, `page_url`) so that web and mobile views are processed through the same analytics pipeline.

## Properties

| Property | Type | Description | Web SDK | Mobile SDK |
| :- | :- | :- | :- | :- |
| `url` | String | Full URL of the page. | `window.location.href` | Not set |
| `path` | String | Path component of the URL (without query string or hash). | `window.location.pathname` | Not set |
| `hash` | String | Hash fragment of the URL (e.g., `#section`). | `window.location.hash` | Not set |
| `query` | String | Query string of the URL (without the leading `?`). | `window.location.search` | Not set |
| `name` | String | Name of the page or screen. | Caller-provided | Screen name (required) |
| `category` | String | Category of the page or screen. | Caller-provided | Caller-provided |
| `title` | String | Title of the page. | Caller-provided | Not set |

On web, any non-UTM query-string parameters are also added as individual properties. The SDKs additionally auto-collect the following context fields:

| Context field | Web SDK | Mobile SDK |
| :- | :- | :- |
| `context.page_url` | `window.location.href` | `app://{screenName}` |
| `context.page_title` | `document.title` | Screen name |
| `context.page_path` | Not set (derived in backend) | Not set (derived in backend) |
| `context.referrer` | `document.referrer` | From deep link (if set) |
| `context.user_agent` | Browser user agent | Device user agent (if available) |
| `context.locale` | Browser language | Device locale |
| `context.timezone` | Resolved IANA timezone | Resolved IANA timezone |
| `context.location` | Country derived from timezone | Country derived from timezone |
| `context.library_name` | `"Formo Web SDK"` | `"Formo React Native SDK"` |
| `context.library_version` | SDK version | SDK version |
| `context.browser` | Detected browser name | Not set |
| `context.screen_width` | `window.screen.width` | `Dimensions.get("screen").width` |
| `context.screen_height` | `window.screen.height` | `Dimensions.get("screen").height` |
| `context.screen_density` | `window.devicePixelRatio` | `Dimensions.get("screen").scale` |
| `context.viewport_width` | `window.innerWidth` | Not set |
| `context.viewport_height` | `window.innerHeight` | Not set |
| `context.os_name` | Not set | `ios` or `android` |
| `context.os_version` | Not set | OS version string |
| `context.device_model` | Not set | Device model (e.g., `iPhone 14 Pro`) |
| `context.device_manufacturer` | Not set | Device manufacturer (e.g., `Apple`) |
| `context.device_name` | Not set | Device name |
| `context.device_type` | Not set | `mobile` or `tablet` |
| `context.app_name` | Not set | From native config or options |
| `context.app_version` | Not set | From native config or options |
| `context.app_build` | Not set | From native config or options |
| `context.app_bundle_id` | Not set | From native config or options |
| `context.network_wifi` | Not set | `true` if connected via WiFi |
| `context.network_cellular` | Not set | `true` if connected via cellular |
| `context.network_carrier` | Not set | Cellular carrier name (when on cellular) |
| `channel` | `"web"` | `"mobile"` |

## Sample Payload (Web)

```json theme={null}
{
    "type": "page",
    "channel": "web",
    "context": {
        "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36",
        "locale": "en-US",
        "timezone": "Asia/Saigon",
        "location": "ID",
        "referrer": "https://chatgpt.com/",
        "utm_source": "chatgpt.com",
        "utm_medium": "",
        "utm_campaign": "",
        "utm_term": "",
        "utm_content": "",
        "page_url": "https://formo.so/faucets?utm_source=chatgpt.com",
        "page_title": "Free testnet faucets",
        "library_name": "Formo Web SDK",
        "library_version": "1.30.1",
        "browser": "chrome",
        "screen_width": 1920,
        "screen_height": 1080,
        "screen_density": 1,
        "viewport_width": 1920,
        "viewport_height": 969
    },
    "properties": {
        "url": "https://formo.so/faucets?utm_source=chatgpt.com",
        "path": "/faucets",
        "hash": "",
        "query": "utm_source=chatgpt.com",
        "name": "Faucets",
        "category": "Docs",
        "title": "Free testnet faucets"
    }
}
```

## Sample Payload (Mobile)

Screen events from the [mobile SDK](/sdks/mobile) are sent as `page` events with `channel: "mobile"`:

```json theme={null}
{
    "type": "page",
    "channel": "mobile",
    "version": "0",
    "session_id": "117b982a451dc22edea6413b8e20958216c0a5b3baaa1d90699c42dbf4e74e33",
    "anonymous_id": "c2bc0ebe-d852-49d1-9efd-e45744850ae0",
    "context": {
        "library_name": "Formo React Native SDK",
        "library_version": "1.0.0",
        "page_title": "Wallet",
        "page_url": "app://Wallet",
        "locale": "en-US",
        "timezone": "America/New_York",
        "location": "US",
        "os_name": "ios",
        "os_version": "17.0",
        "device_model": "iPhone 14 Pro",
        "device_manufacturer": "Apple",
        "device_name": "Yos's iPhone",
        "device_type": "mobile",
        "app_name": "MyDeFiApp",
        "app_version": "2.1.0",
        "app_build": "42",
        "app_bundle_id": "com.example.mydefiapp",
        "network_wifi": true,
        "network_cellular": false,
        "screen_width": 393,
        "screen_height": 852,
        "screen_density": 3
    },
    "properties": {
        "name": "Wallet",
        "category": "Main"
    }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.