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

# September 2026

> Review Plainrouter product updates shipped in September 2026, including Signals onboarding, collector updates, and measurement improvements.

Plainrouter ships continuously. This page collects the customer-facing changes from September and leaves out formatting, CI, and internal draft work.

<Update label="September 17, 2026">
  ## Connect MCP clients with stateless discovery

  **Improved** · Plainrouter MCP supports protocol `2026-07-28` with `server/discover` and per-request protocol metadata. Legacy `initialize` clients remain supported. Custom HTTP clients must send matching MCP headers and no longer receive a session ID. Workspace-token and approval requirements remain unchanged. [Check client compatibility](/docs/mcp/setup#which-mcp-protocol-should-my-client-use).
</Update>

<Update label="September 16, 2026">
  ## Install Signals directly from Dashboard and Signals

  **Improved** · Before the first arrival, Dashboard and Signals display installation instructions directly, including the CNAME and snippet for a provisioned managed hostname. Sample dashboard charts have been removed. Same-origin forwarding details open automatically when Path B is selected. [Install Signals and verify collection](/docs/signals/install-pixel).
</Update>

<Update label="September 14, 2026">
  ## Install Signals before connecting Meta

  **Improved** · Saving a website address now opens **Install** directly. Meta authorization and dataset selection remain optional for arrival collection, and **Continue without Meta** provides a way back when assets are unavailable. [Follow the updated quickstart](/docs/quickstart#set-up-signals).

  ## Choose the collection hostname before provisioning

  **Improved** · Managed-hostname setup suggests `t` on your website domain and lets you edit that DNS label on Install before confirming it. The final stored hostname supplies the CNAME and snippet; it cannot be renamed after provisioning. [Choose your hostname](/docs/signals/configure-dns#choose-your-collection-hostname).

  ## Server-event acknowledgements flag invalid consent timestamps

  **New** · New secret-authenticated event acknowledgements include `warnings`. The `consent_captured_at_invalid` warning identifies a missing or invalid capture time when visitor or user identity is supplied. Event acceptance and duplicate responses retain their existing semantics. [Handle the warning](/docs/api/conversions#why-is-the-consent-capture-time-invalid).

  ## Published agent skills use workspace execution tokens

  **Fixed** · The published account-context, ingestion-verification, and governed-proposal skills now distinguish workspace execution tokens from OAuth management credentials and Signals workspace secrets. The proposal skill uses the supported creative workflow and preserves human approval and verification requirements. [Choose the correct MCP credential](/docs/api/authentication#how-do-i-authenticate-plainrouter-mcp) and [follow the creative walkthrough](/docs/actions/creative-workflow).
</Update>

<Update label="September 13, 2026">
  ## Meta comparisons distinguish missing reads from reported data

  **Improved** · Signals and CSV exports show stored Meta clicks, impressions, and account-currency spend with daily **Reported**, **Read but not reported**, and **Not yet read** states. Incomplete reads remain unavailable rather than becoming assumed zeros. [Read the comparison](/docs/signals/health-and-performance#platform-read-state).
</Update>

<Update label="September 12, 2026">
  ## Connect a Meta ad account for reporting

  **Improved** · The Signals overview's Meta connection flow asks you to select a business portfolio and ad account for platform reporting. Conversion-destination setup remains separate. [Choose the connection you need](/docs/signals/connect-meta#connect-meta-for-reporting).
</Update>

<Update label="September 10, 2026">
  ## Recover a removed collection hostname

  **Fixed** · Signals now identifies a managed hostname removed at Cloudflare and offers **Re-provision hostname**. Re-provisioning preserves the removed record as history. [Recover the hostname](/docs/signals/configure-dns#cloudflare-removed-the-collection-hostname).

  ## Workspace grants can be revoked through MCP

  **New** · Execution calls check an active workspace grant for the requested operation. The authorized `revoke_grant` tool stops further operations under that grant and records an audit event. [Review grant revocation](/docs/mcp/tools#revoke_grant).

  ## Legacy Launcher is disabled by default

  **Changed** · Legacy Drive connection, inventory sync, file import, and `launcher.*` MCP tools require explicit feature enablement. [Check Launcher availability](/docs/launcher/connect-drive).

  ## Free conversion checks are available in the browser

  **New** · Inspect synthetic payloads, event IDs, cookies, and field coverage, or build campaign URLs with the [Library's implementation guides and local checks](https://plainrouter.com/library). Local checks do not establish platform delivery or Meta match quality.

  ## Landing click IDs stay in document memory

  **Privacy** · The v4 snippet keeps landing click IDs in the current document's memory and sends them only with fully consented events. It retires the `pr_click_ids` cookie and drops malformed click-ID entries individually without discarding valid entries. Meta's consent-gated `_fbc` and `_fbp` cookies remain separate. [Review click-ID handling](/docs/signals/track-events#how-landing-click-ids-are-handled).

  ## Team names stay aligned with Stripe

  **Fixed** · Renaming a team in settings or during billing checkout now updates its existing Stripe customer after the name is saved. A temporary Stripe failure leaves the saved name intact. [Review billing setup](/docs/billing/overview).
</Update>

<Update label="September 9, 2026">
  ## Arrival totals remain complete when a small cell is withheld

  **Improved** · Signals and CSV exports retain complete arrival totals, including totals below five. A withheld strict-EU subtotal is labeled separately and does not reduce the total or difference calculation. Completed reporting windows and **Today so far** remain separate. [Interpret the totals](/docs/signals/health-and-performance#events-received).
</Update>

<Update label="September 8, 2026">
  ## Find the right Meta Pixel during setup

  **Improved** · Signals setup starts with the website address and offers a searchable dataset/Pixel picker. Saving a destination returns to the overview, where **Install** opens collection-domain setup. [Connect the destination](/docs/signals/connect-meta#connect-the-destination).

  ## Accept and manage team invitations

  **Improved** · Invitations continue through login or registration and require an explicit **Join** action with the invited email. Links last seven days; owners can resend or cancel pending invitations. [Join an invited team](/docs/quickstart#join-an-invited-team).

  ## Retention instruction records are retired

  **Changed** · The former retention-instruction history and export have been removed. Workspace identity-retention policy continues to apply. [Review current retention behavior](/docs/signals/overview#identity-retention).

  ## Arrivals are counted on page load

  **Improved** · The v4 snippet sends one identity-free arrival per document load before consent evaluation, on both managed-hostname and same-origin installations. Consent changes and in-app navigation do not add arrivals. Conversion events, visitor identity, and Meta delivery remain consent-gated. [Verify the arrival request](/docs/signals/install-pixel#verify-the-installation).

  ## Ad-account onboarding is optional

  **Improved** · Continue to Signals setup without connecting an ad account, or skip to the dashboard and return later. Signals setup starts with the website address, keeping it separate from the collection-domain DNS instructions. [Follow the quickstart](/docs/quickstart).

  ## Dashboard charts are clearly marked as a preview

  **Improved** · The dashboard offers customizable charts labeled as sample data. Workspace, team, and profile names save on blur, and appearance settings include System mode. Use Signals for actual website measurements.
</Update>

<Update label="September 7, 2026">
  ## Signals centers the overview on website measurement

  **Improved** · The workspace Signals page now presents collection status, arrivals and platform activity, and verified revenue. Account-scoped gateway delivery, EMQ, and reconciliation diagnostics remain available through MCP. [Read Signals measurements](/docs/signals/health-and-performance).
</Update>

<Update label="September 6, 2026">
  ## Billing checkout includes your company or team name

  **Improved** · The dashboard guides eligible paid workspaces into hosted Stripe Checkout and asks for the company or team name used on invoices. Workspaces joining an existing team subscription show a synchronization notice. [Complete billing setup](/docs/billing/overview#how-do-i-complete-checkout).
</Update>

<Update label="September 5, 2026">
  ## Self-serve Signals setup now waits for real traffic

  **Improved** · Open registration now leads directly into a Signals setup that issues the workspace API secret once, guides DNS and browser installation, and turns green only after Plainrouter stores a real eligible arrival. The identity-free REST and MCP verification event remains available as a write-path diagnostic, but it no longer counts as onboarding evidence. [Follow the self-serve quickstart](/docs/quickstart).

  ## New installations use the v4 collector

  **New** · Every generated managed-hostname, onboarding, and same-origin installation now loads `/s/v4.js`. The live collector is served from Plainrouter's dedicated `cname.plainrouter.app` origin behind each customer collection domain, while previously published major URLs remain available for existing installations. [Install the current Signals pixel](/docs/signals/install-pixel).
</Update>

<Update label="September 4, 2026">
  ## Signals setup removes the retention questionnaire

  **Improved** · New Signals setup uses the 90-day identity-retention default without asking you to fill out a legal-profile or retention questionnaire. Server-side retention policy continues to apply. [Review identity retention](/docs/signals/overview#identity-retention).

  ## Pricing is pinned at the first paying invoice

  **Improved** · Plainrouter pins the pricing table when the first paying invoice is reserved, rather than when an account is created. [Understand the pricing basis](/docs/billing/overview).
</Update>

<Update label="September 3, 2026">
  ## Connect Stripe revenue from workspace settings

  **New** · Workspace settings now provide the callback URL and signing-secret setup for Stripe verified revenue. Paid Checkout Sessions can produce verified purchase events in Signals. [Connect Stripe revenue](/docs/signals/track-events#verify-stripe-checkout-settlement).

  ## EUR pricing includes arrival allowances

  **Improved** · Published monthly pricing bands now explain the observed-spend basis, included arrivals, and overage rate. The Free band has a €0 base price below €300 in observed monthly ad spend and includes 2,000 arrivals. [Review pricing and billing](/docs/billing/overview).
</Update>
