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

# Hosted pages (Mode D)

> Upload static pages that Dava serves directly, with client-side tracking that email scanners can't trigger.

In Mode D, a domain doesn't redirect — Dava serves static pages you upload, at the paths you choose. Tracking fires client-side in the visitor's browser.

Email scanners and bots fetch HTML but don't execute JavaScript, so they never register as visits. Only real browsers fire the tracking event, which makes Mode D the most accurate option for email and SMS click counts.

## Upload pages

<Steps>
  <Step title="Set the domain to Mode D">
    On the domain's **Configuration** tab, switch the mode to **Hosted landing pages**.
  </Step>

  <Step title="Upload your files">
    Export your page from Webflow, Figma, or any tool that produces static files, and upload a zip or individual files. The page becomes available at its path, for example `pages.mybrand.com/spring-sale`.
  </Step>

  <Step title="Publish">
    Uploads are staged as a draft. Click **Publish** to make the new version live.
  </Step>
</Steps>

### Limits

* Static files only: HTML, CSS, JS, images, fonts, MP4/WebM. No server-side code or form handling.
* 25 MB per file, 1 GB total per subdomain.

## Versions and rollback

Every upload is kept as a version with its timestamp, file count, and status (Active, Staged, or Inactive). To roll back, pick any earlier version — it's staged as a draft, and you publish it like a normal upload.

## Tracking on hosted pages

The tracking snippet is injected into your HTML automatically (you can turn auto-inject off and [embed it yourself](/tracking/install-snippet)). Attribution is read client-side from the page URL — UTM parameters or query parameters such as a per-recipient `contact_id`.

Forwarding the visitor's query parameters onto links to your own other subdomains (e.g. from a hosted landing page to your checkout) is handled automatically by the snippet's built-in cross-subdomain linker — there's nothing to call from a CTA button.

## Hosted pages vs. gateway pages

These are different features:

* **Hosted pages** (this page) — your own HTML bundles, uploaded per subdomain, one per campaign.
* **Gateway pages** — a library of reusable interstitial templates (consent prompts, age gates, disclaimers) under **Gateway Pages** in the dashboard, created once and attachable to multiple campaigns.
