Website performance insights

Share this article

Overview

The Web Performance area (/web-performance) in the Mallard Bay admin dashboard is where you review traffic and session analytics for your public outfitter website—users and sessions over time, page views, typical session duration, paths that gather the most sessions, device mixes, and which referrers send traffic.

Those numbers rely on Mallard Bay’s website tracking script. The dashboard provides Add Tracking Script, which generates a snippet that loads Mallard Bay’s hosted tracking file and ties events to your outfitter using a data-outfitter attribute.

Important: Despite some high-level labeling elsewhere, this dashboard page does not show Core Web Vitals (for example Largest Contentful Paint or Cumulative Layout Shift), Lighthouse-style scores, or other technical page-speed lab diagnostics. If you need storefront load-time tooling, plan to complement Mallard Bay with external performance tooling. For exact definitions of sessions, users, referrers, and ingestion timing, contact Mallard Bay support.

Prerequisites

  1. Team access — You can sign in to the Mallard Bay admin dashboard on behalf of an outfitter.
  2. Web Performance entitlement — The route is wrapped in a paywall keyed to WEB_PERFORMANCE. If your plan does not include it, staff see framed upsell content instead of charts; Mallard Bay administrator accounts bypass that gate (useFeature).
  3. Working outfitter context — The modal for the tracking snippet only reliably opens once your outfitter identifier has resolved.

Step-by-step: Using Web Performance

Open the Web Performance screen

Navigate to /web-performance. The page header title is Web Performance.

The sidebar or menu label you click to arrive here depends on Mallard Bay’s navigation setup for your account.

Wait for outfitter loading/errors to settle (the shell uses LoadingOrErrorContainer patterns).

Select the reporting month

Use the adjacent month navigation:

  • Move previous month / next month (whole calendar months from first moment to last moment of the month via startOfMonth / endOfMonth).
  • Use the today shortcut to snap back to the calendar month containing today.
  • On initial load, the page seeds the span to the current month.

There is no arbitrary-date-range picker in this implementation; only full months matter.

Choose a view (Traffic Metrics vs Aggregated Data)

A dropdown selects the layout:

Traffic Metrics

Supporting text in-product describes this as daily performance over the selected time period. You’ll see stacked line graphs for:

Chart Signals
Users New Users and Total Users per day.
Sessions Daily total sessions.
Page Views Daily total page views.

Aggregated Data

Broadly rollup + breakdown:

  1. Key Session Metrics
    • Avg. Session Duration — Summarized from avg_session_duration series points; purely zero durations are discarded before averaging. If nothing usable remains, UI copy reads No data for the current selection.
    • New Users — A single percentage from new_users_percentage.value formatted to one decimal.
    • Session Duration (minutes) — Uses the time_series metrics list; each datapoint converts milliseconds → whole minutes per day for the plotted line (Math.round(ms / 1000 / 60)).
  2. Top Pages — Lists up to five routes ranked by session counts; horizontal chart shows each row’s percentage relative to summed sessions inside that top-five list.
  3. Device Type Breakdown — Pie + detail for mobile, desktop, and tablet, with optional platform subdivisions populated when counts exist (iOS / Android on phones, macOS / Windows on desktops, analogous tablet splits). Blank charts show No metrics available.
  4. Top Traffic Sources — Subtitle explains these are sources driving the most traffic. Each card shows the referrer label, ordinal badge, totals for sessions, and totals labeled Users wired from new_user_count in the GraphQL payload. If the API sends no referrers, you see No metrics available.

Install or verify the Mallard Bay website tracking snippet

Use the header action Add Tracking Script (code icon):

  1. The modal Add Website Tracking Script appears when outfitterId truthy.

  2. Answer What kind of website do you have? by selecting Custom, Wix, or WordPress (these cards reuse the same component as booking-widget onboarding).

  3. The modal shows copyable markup:

    <script
        src="<Mallard Bay root URL>/mb-website-tracking/index.js"
        data-outfitter="<your outfitter id>"
    ></script>
    

    The exact host resolves from Mallard Bay’s configured root (GATSBY_MB_ROOT_URL at build/runtime); expect it to mirror whichever Mallard Bay environment your dashboard belongs to.

  4. Platform instructions default to inlineSteps narratives (unless InstructionsSteps receives isTab, which tracking does not)—e.g. Wix embed directions, switching WordPress to code view, or pasting into custom HTML.

  5. Back returns you to the platform picker without closing the overlay.

Treat this snippet as complementary to—not a replacement for—your booking widget embed workflow: both relate to Mallard snippets on your Website, yet they satisfy different behaviors (analytics attribution vs initiating bookings).

When charts look broken vs empty

Distinguish Apollo/network errors (handled by LoadingOrErrorContainer) from truthfully sparse metrics (No metrics available messaging). Operational fixes depend on ingestion and script presence; diagnosing server-side ingestion is beyond the UI code reviewed here.

Common pitfalls

  • Expecting Core Web Vitals or synthetic speed audits on this screen — Traffic/session analytics ≠ technical performance metrics; none of the wired queries expose CWVs here.
  • Charts stay flat after edits — Script missing, pasted only on a staging domain, CSP blocking third-party <script> tags, or guests using aggressive blockers.
  • Interpreting “Top Pages” globally — Only five URLs appear; percentages are relative to that capped slice, not the entire site taxonomy.
  • Confusing referrer “Users” counts — Cards label new_user_count with the localized Users string; reconcile mentally with whichever guest definitions your team uses externally.
  • Plan gating mistaken for breakage — The upsell iframe means entitlement, not a bug in Mallard analytics.

Related workflows

Domain touchpoint Practical link
Website & marketing footprint You must place tracking wherever real guests browse storefront pages; otherwise reports undercount reality.
Booking Widget Often another <script>/embed step; aligns with mallard onboarding copy patterns (website-instructions-config) though it targets booking conversion pathways.
Listings availability & SEO High-traffic routes may mirror listing-heavy URLs; correlate top pages with listing popularity manually.
Leads, quotes, bookings, paid-media reporting Referrer cards hint at acquisition sources but funnel metrics still live elsewhere in Mallard reporting modules.

For details not visible in the dashboard, such as ingestion lag, referrer canonicalization, or server-side truncation of referrers, contact Mallard Bay support instead of inferring behavior from the charts alone.

Related knowledge articles

Website builder

The Website builder is where you design and maintain your outfitter’s Mallard Bay–hosted marketing w...

Read
Mallard Bay Logo
Pricing
Mallard Bay Logo

Quick Links

Pricing

Sitemap

FAQs

Get in Touch

+1 (225) 831-8219

sales@mallardbay.com

Made in Houston Texas