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

# Data Control and Quality

> Keep your Twinalyze data clean by detecting duplicate events, missing events, wrong event names, invalid properties, bots, test traffic, and unwanted traffic.

Clean data is the foundation of accurate analytics.

Twinalyze helps you find tracking issues early, keep reports reliable, and make sure your users, events, funnels, retention, campaigns, and Ask AI insights are based on trusted data.

***

## Quality control map

<div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
  <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
    <p className="text-sm font-semibold tracking-wide text-blue-700 dark:text-blue-300">
      Data quality overview
    </p>

    <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-600 dark:text-slate-300">
      These are the most common data quality issues that can affect reports, funnels, retention, campaigns, and user insights.
    </p>
  </div>

  <table className="w-full table-fixed divide-y divide-slate-200 dark:divide-slate-700">
    <thead className="bg-white dark:bg-slate-900">
      <tr>
        <th className="w-[64px] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400" />

        <th className="w-[28%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
          Issue
        </th>

        <th className="w-[40%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
          What can go wrong
        </th>

        <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
          Business impact
        </th>
      </tr>
    </thead>

    <tbody className="divide-y divide-slate-100 bg-white dark:divide-slate-800 dark:bg-slate-900">
      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-5 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-red-50 text-red-600 dark:bg-red-900/30 dark:text-red-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <path d="M8 7H16" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M8 12H16" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M8 17H13" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M6 4H18C19.1 4 20 4.9 20 6V18C20 19.1 19.1 20 18 20H6C4.9 20 4 19.1 4 18V6C4 4.9 4.9 4 6 4Z" stroke="currentColor" strokeWidth="1.8" />

              <path d="M15.5 15.5L19.5 19.5" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M19.5 15.5L15.5 19.5" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-5 align-top">
          <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
            Duplicate Events
          </div>

          <div className="mt-1 text-xs text-slate-500 dark:text-slate-400">
            Same action tracked twice
          </div>
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          The same event is sent more than once for one user action.
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Inflated counts, wrong funnels, and inaccurate revenue or engagement reports.
        </td>
      </tr>

      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-5 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-orange-50 text-orange-600 dark:bg-orange-900/30 dark:text-orange-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <path d="M12 4V12" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M12 16H12.01" stroke="currentColor" strokeWidth="2.4" strokeLinecap="round" />

              <path d="M10.2 4.8L3.8 17.2C3.1 18.5 4 20 5.5 20H18.5C20 20 20.9 18.5 20.2 17.2L13.8 4.8C13.1 3.5 10.9 3.5 10.2 4.8Z" stroke="currentColor" strokeWidth="1.8" strokeLinejoin="round" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-5 align-top">
          <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
            Missing Events
          </div>

          <div className="mt-1 text-xs text-slate-500 dark:text-slate-400">
            Expected event not received
          </div>
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Important actions like signup, checkout, purchase, or screen view are not tracked.
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Broken funnels, incomplete journeys, and incorrect conversion analysis.
        </td>
      </tr>

      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-5 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-purple-50 text-purple-600 dark:bg-purple-900/30 dark:text-purple-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <path d="M5 7H19" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M5 12H13" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M5 17H10" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M15 15L18 18L21 14" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-5 align-top">
          <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
            Wrong Event Names
          </div>

          <div className="mt-1 text-xs text-slate-500 dark:text-slate-400">
            Same action, different names
          </div>
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          One action is tracked with multiple names such as{" "}
          <code className="rounded bg-slate-100 px-1 py-0.5 text-xs text-slate-700 dark:bg-slate-800 dark:text-slate-200">AddToCart</code>
          ,{" "}
          <code className="rounded bg-slate-100 px-1 py-0.5 text-xs text-slate-700 dark:bg-slate-800 dark:text-slate-200">add\_cart</code>
          , or{" "}
          <code className="rounded bg-slate-100 px-1 py-0.5 text-xs text-slate-700 dark:bg-slate-800 dark:text-slate-200">add\_to\_cart</code>
          .
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Split reports, confusing analysis, and unreliable filters.
        </td>
      </tr>

      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-5 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-blue-50 text-blue-600 dark:bg-blue-900/30 dark:text-blue-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <path d="M4 7H20" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M7 12H17" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M10 17H14" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M6 4H18C19.1 4 20 4.9 20 6V18C20 19.1 19.1 20 18 20H6C4.9 20 4 19.1 4 18V6C4 4.9 4.9 4 6 4Z" stroke="currentColor" strokeWidth="1.8" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-5 align-top">
          <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
            Invalid Properties
          </div>

          <div className="mt-1 text-xs text-slate-500 dark:text-slate-400">
            Missing or wrong values
          </div>
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Required properties are missing, inconsistent, or sent in the wrong data type.
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Bad segments, wrong cohorts, and unreliable reports.
        </td>
      </tr>

      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-5 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-emerald-50 text-emerald-600 dark:bg-emerald-900/30 dark:text-emerald-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <path d="M12 3L19 6V11C19 15.5 16.2 19.5 12 21C7.8 19.5 5 15.5 5 11V6L12 3Z" stroke="currentColor" strokeWidth="1.8" strokeLinejoin="round" />

              <path d="M9 12L11 14L15.5 9.5" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-5 align-top">
          <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
            Bot & Unwanted Traffic
          </div>

          <div className="mt-1 text-xs text-slate-500 dark:text-slate-400">
            Fake or non-human activity
          </div>
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Crawlers, scrapers, spam, test users, or internal users are mixed with real users.
        </td>

        <td className="px-5 py-5 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Fake users, wrong sessions, and misleading product decisions.
        </td>
      </tr>
    </tbody>
  </table>
</div>

***

## Data quality checks

<Tabs>
  <Tab title="Duplicate Events">
    Duplicate events happen when the same user action is tracked more than once.

    <Warning>
      Duplicate events can increase event counts and create incorrect reports, funnels, campaign results, and revenue metrics.
    </Warning>

    **Common examples**

    <div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
      <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
        <p className="text-lg font-semibold tracking-wide text-blue-700 dark:text-blue-300">
          Common duplicate event examples
        </p>

        <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-700 dark:text-slate-300">
          These issues usually happen when the same action is tracked more than once.
        </p>
      </div>

      <table className="w-full table-fixed divide-y divide-slate-200 dark:divide-slate-700">
        <thead className="bg-white dark:bg-slate-900">
          <tr>
            <th className="w-[36%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Example
            </th>

            <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Why it is a problem
            </th>
          </tr>
        </thead>

        <tbody className="divide-y divide-slate-100 bg-white dark:divide-slate-800 dark:bg-slate-900">
          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              `button_clicked` fires twice
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              One click appears as two actions.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              `screen_viewed` fires repeatedly
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Screen views become inflated.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Auto + manual tracking both send same event
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Reports count the same action twice.
            </td>
          </tr>
        </tbody>
      </table>
    </div>

    **How to prevent duplicate events**

    <Steps>
      <Step title="Use one tracking method">
        Avoid sending the same event from both auto tracking and manual tracking.
      </Step>

      <Step title="Use unique identifiers">
        Use values like `eventId`, `orderId`, `sessionId`, or `screenId` for important events.
      </Step>

      <Step title="Check sudden spikes">
        Review events that suddenly increase without a real product or marketing change.
      </Step>

      <Step title="Test critical events">
        Test signup, checkout, payment, and purchase events carefully before release.
      </Step>
    </Steps>

    **Recommended duplicate-safe event**

    ```json theme={null}
    {
      "eventName": "purchase_completed",
      "eventId": "evt_10293",
      "orderId": "ORD_98765",
      "userId": "user_123",
      "sessionId": "session_789",
      "properties": {
        "amount": 2499,
        "currency": "INR",
        "itemCount": 3
      }
    }
    ```
  </Tab>

  <Tab title="Missing Events">
    Missing events happen when an expected user action is not tracked.

    <Info>
      Missing events usually happen because of SDK setup issues, wrong trigger conditions, network failures, or code paths where tracking was not added.
    </Info>

    **Missing event examples**

    <div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
      <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
        <p className="text-lg font-semibold tracking-wide text-blue-700 dark:text-blue-300">
          Missing event examples
        </p>

        <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-700 dark:text-slate-300">
          These examples show important actions where tracking may be missing.
        </p>
      </div>

      <table className="w-full table-fixed divide-y divide-slate-200 dark:divide-slate-700">
        <thead className="bg-white dark:bg-slate-900">
          <tr>
            <th className="w-[40%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Expected action
            </th>

            <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Missing event
            </th>
          </tr>
        </thead>

        <tbody className="divide-y divide-slate-100 bg-white dark:divide-slate-800 dark:bg-slate-900">
          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              User opens checkout
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `checkout_started` is not received
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              User completes signup
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `signup_completed` is missing
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Screen opens
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `screen_viewed` is not tracked
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Notification is shown
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `notification_received` is missing
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Payment fails
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `payment_failed` is not received
            </td>
          </tr>
        </tbody>
      </table>
    </div>

    **How to detect missing events**

    <div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
      <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
        <p className="text-lg font-semibold tracking-wide text-blue-700 dark:text-blue-300">
          How to detect missing events
        </p>

        <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-700 dark:text-slate-300">
          Use these checks to confirm that important events are tracked correctly.
        </p>
      </div>

      <table className="w-full table-fixed divide-y divide-slate-200 dark:divide-slate-700">
        <thead className="bg-white dark:bg-slate-900">
          <tr>
            <th className="w-[34%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Check
            </th>

            <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              What to verify
            </th>
          </tr>
        </thead>

        <tbody className="divide-y divide-slate-100 bg-white dark:divide-slate-800 dark:bg-slate-900">
          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Event flow
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Expected events are received in the correct order.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Platform coverage
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Web, Android, iOS, Flutter, and React Native send the same important events.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Critical actions
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Signup, checkout, payment, and purchase are always tracked.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              SDK health
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              SDK is initialized before events are sent.
            </td>
          </tr>
        </tbody>
      </table>
    </div>

    <Tip>
      Create a small test journey and verify every expected event from start to finish.
    </Tip>

    ```txt theme={null}
    page_view
    product_viewed
    add_to_cart
    checkout_started
    payment_started
    purchase_completed
    ```
  </Tab>

  <Tab title="Wrong Event Names">
    Wrong event names make analysis difficult because the same action appears as multiple different events.

    **Recommended format**

    ```txt theme={null}
    add_to_cart
    checkout_started
    payment_failed
    purchase_completed
    screen_viewed
    notification_clicked
    ```

    **Event naming rules**

    <div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
      <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
        <p className="text-lg font-semibold tracking-wide text-blue-700 dark:text-blue-300">
          Event naming rules
        </p>

        <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-700 dark:text-slate-300">
          Follow one naming style across all platforms to avoid split reports.
        </p>
      </div>

      <table className="w-full table-fixed divide-y divide-slate-200 dark:divide-slate-700">
        <thead className="bg-white dark:bg-slate-900">
          <tr>
            <th className="w-[32%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Rule
            </th>

            <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Recommended
            </th>
          </tr>
        </thead>

        <tbody className="divide-y divide-slate-100 bg-white dark:divide-slate-800 dark:bg-slate-900">
          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Case style
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Use lowercase.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Word separator
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Use underscore.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Event meaning
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Use action-based names.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Platform consistency
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Use the same event name across Web, Android, and iOS.
            </td>
          </tr>
        </tbody>
      </table>
    </div>

    <Warning>
      Do not create multiple names for the same user action. It will split reports and reduce data accuracy.
    </Warning>
  </Tab>

  <Tab title="Invalid Properties">
    Invalid properties happen when event data is missing, wrongly typed, or inconsistent.

    **Common property issues**

    <div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
      <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
        <p className="text-lg font-semibold tracking-wide text-blue-700 dark:text-blue-300">
          Common property issues
        </p>

        <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-700 dark:text-slate-300">
          These property issues can break filters, reports, cohorts, and segmentation.
        </p>
      </div>

      <table className="w-full table-fixed divide-y divide-slate-200 dark:divide-slate-700">
        <thead className="bg-white dark:bg-slate-900">
          <tr>
            <th className="w-[36%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Issue
            </th>

            <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Example
            </th>
          </tr>
        </thead>

        <tbody className="divide-y divide-slate-100 bg-white dark:divide-slate-800 dark:bg-slate-900">
          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Wrong data type
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `price` sent as text instead of number
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Missing required value
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `currency` missing from purchase event
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              User mismatch
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `userId` missing after login
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Inconsistent value
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `country` sent as `India`, `IN`, and `india`
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Platform mismatch
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `screenName` differs across platforms
            </td>
          </tr>
        </tbody>
      </table>
    </div>

    **Recommended property format**

    ```json theme={null}
    {
      "eventName": "add_to_cart",
      "properties": {
        "productId": "PRD_1001",
        "productName": "Gold Hair Pin",
        "category": "Hair Accessories",
        "price": 499,
        "currency": "INR",
        "quantity": 1
      }
    }
    ```

    **Property validation checklist**

    <div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
      <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
        <p className="text-lg font-semibold tracking-wide text-blue-700 dark:text-blue-300">
          Property validation checklist
        </p>

        <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-700 dark:text-slate-300">
          Validate important properties before using them in filters, cohorts, and reports.
        </p>
      </div>

      <table className="w-full table-fixed divide-y divide-slate-200 dark:divide-slate-700">
        <thead className="bg-white dark:bg-slate-900">
          <tr>
            <th className="w-[36%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Property check
            </th>

            <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
              Example
            </th>
          </tr>
        </thead>

        <tbody className="divide-y divide-slate-100 bg-white dark:divide-slate-800 dark:bg-slate-900">
          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Required value exists
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `productId` should not be empty.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Correct data type
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `price` should be a number.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Consistent value
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              `currency` should be `INR`, not `inr` or `Rs`.
            </td>
          </tr>

          <tr className="hover:bg-slate-50 dark:hover:bg-slate-800">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950 dark:text-slate-100">
              Platform match
            </td>

            <td className="px-5 py-4 text-sm leading-6 text-slate-600 dark:text-slate-300">
              Web and app should send similar property names.
            </td>
          </tr>
        </tbody>
      </table>
    </div>

    <Tip>
      Keep property names stable. Changing property names later can break filters, cohorts, and saved reports.
    </Tip>
  </Tab>
</Tabs>

***

## Common unwanted traffic types

<AccordionGroup>
  <Accordion title="Bots">
    Bots are automated systems that visit your website or app without real user intent.

    Common examples:

    * Search engine crawlers
    * Scrapers
    * Automated testing tools
    * Headless browser traffic
    * Fake traffic generators

    <div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm">
      <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4">
        <p className="text-sm font-semibold tracking-wide text-blue-700">
          Bot indicators
        </p>

        <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-600">
          These signals help identify traffic that may not represent real users.
        </p>
      </div>

      <table className="w-full table-fixed divide-y divide-slate-200">
        <thead className="bg-white">
          <tr>
            <th className="w-[36%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500">
              Signal
            </th>

            <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500">
              Example
            </th>
          </tr>
        </thead>

        <tbody className="divide-y divide-slate-100 bg-white">
          <tr className="hover:bg-slate-50">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950">Very high event frequency</td>
            <td className="px-5 py-4 text-sm leading-6 text-slate-600">Hundreds of events in a short time</td>
          </tr>

          <tr className="hover:bg-slate-50">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950">No real interaction pattern</td>
            <td className="px-5 py-4 text-sm leading-6 text-slate-600">Page views without clicks or meaningful actions</td>
          </tr>

          <tr className="hover:bg-slate-50">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950">Suspicious user agent</td>
            <td className="px-5 py-4 text-sm leading-6 text-slate-600">Headless browser, crawler, or automation tool</td>
          </tr>

          <tr className="hover:bg-slate-50">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950">Repeated IP/device pattern</td>
            <td className="px-5 py-4 text-sm leading-6 text-slate-600">Same source creating many sessions</td>
          </tr>

          <tr className="hover:bg-slate-50">
            <td className="px-5 py-4 text-sm font-semibold text-slate-950">Invalid session behavior</td>
            <td className="px-5 py-4 text-sm leading-6 text-slate-600">Session duration too short or repetitive</td>
          </tr>
        </tbody>
      </table>
    </div>

    <Warning>
      Bot traffic can increase page views, sessions, users, and event counts without real user activity.
    </Warning>
  </Accordion>

  <Accordion title="Internal Traffic">
    Internal traffic comes from your own team, developers, QA testers, support team, or admin users.

    This traffic is useful for testing, but it should not affect production analytics.

    Common examples:

    * Developer testing SDK events
    * QA testing checkout or signup flow
    * Admin team opening dashboard repeatedly
    * Internal users using staging or demo builds

    <Tip>
      Use properties like `environment: "development"` or `environment: "staging"` to separate test data from production data.
    </Tip>

    ```json theme={null}
    {
      "eventName": "checkout_started",
      "properties": {
        "environment": "staging",
        "isInternalUser": true,
        "testerRole": "qa"
      }
    }
    ```
  </Accordion>

  <Accordion title="Spam Traffic">
    Spam traffic is fake or low-quality traffic created to pollute analytics.

    Common examples:

    * Repeated fake signups
    * Fake form submissions
    * Invalid referral traffic
    * Suspicious campaign traffic
    * Repeated events from the same unknown source

    <Steps>
      <Step title="Validate important events">
        Add validation for signup, form submit, checkout, payment, and purchase events.
      </Step>

      <Step title="Check suspicious sources">
        Review traffic sources, referrers, campaigns, IP patterns, and device patterns.
      </Step>

      <Step title="Block invalid patterns">
        Filter traffic from known bot sources, invalid user agents, or suspicious repeated sessions.
      </Step>
    </Steps>
  </Accordion>
</AccordionGroup>

***

## Recommended filtering rules

<div className="not-prose overflow-hidden rounded-2xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
  <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-5 py-4 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
    <p className="text-lg font-semibold tracking-wide text-blue-700 dark:text-blue-300">
      Bot and traffic filtering checklist
    </p>

    <p className="mt-1 max-w-2xl text-sm leading-6 text-slate-700 dark:text-slate-300">
      Use multiple signals to separate real users from unwanted traffic.
    </p>
  </div>

  <table className="w-full table-fixed divide-y divide-slate-200 dark:divide-slate-700">
    <thead className="bg-white dark:bg-slate-900">
      <tr>
        <th className="w-[64px] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400" />

        <th className="w-[24%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
          Check
        </th>

        <th className="w-[38%] px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
          What to detect
        </th>

        <th className="px-5 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-500 dark:text-slate-400">
          Recommended action
        </th>
      </tr>
    </thead>

    <tbody className="divide-y divide-slate-100 bg-white dark:divide-slate-800 dark:bg-slate-900">
      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-4 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-purple-50 text-purple-600 dark:bg-purple-900/30 dark:text-purple-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <path d="M5 7H19" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M5 12H14" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M5 17H10" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M16 14L20 18" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M20 14L16 18" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-4 align-top text-sm font-semibold text-slate-950 dark:text-slate-100">
          User agent
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Headless browsers, crawlers, automation tools
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Mark as bot or exclude
        </td>
      </tr>

      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-4 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-orange-50 text-orange-600 dark:bg-orange-900/30 dark:text-orange-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <path d="M4 18H20" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M7 15V11" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M12 15V7" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M17 15V9" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M7 8L12 5L17 7" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-4 align-top text-sm font-semibold text-slate-950 dark:text-slate-100">
          Event frequency
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Too many events in a short time
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Flag as suspicious
        </td>
      </tr>

      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-4 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-blue-50 text-blue-600 dark:bg-blue-900/30 dark:text-blue-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <path d="M6 7H18" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M6 12H18" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M6 17H13" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <circle cx="17" cy="17" r="2" stroke="currentColor" strokeWidth="1.8" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-4 align-top text-sm font-semibold text-slate-950 dark:text-slate-100">
          Session pattern
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Very short or repeated sessions
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Review or exclude
        </td>
      </tr>

      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-4 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-slate-100 text-slate-700 dark:bg-slate-800 dark:text-slate-200">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <rect x="5" y="5" width="14" height="14" rx="2" stroke="currentColor" strokeWidth="1.8" />

              <path d="M8 9H16" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M8 13H13" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M8 17H11" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-4 align-top text-sm font-semibold text-slate-950 dark:text-slate-100">
          Environment
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          `development`, `staging`, `debug`
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Exclude from production reports
        </td>
      </tr>

      <tr className="transition hover:bg-slate-50 dark:hover:bg-slate-800">
        <td className="px-5 py-4 align-top">
          <div className="flex h-10 w-10 items-center justify-center rounded-xl bg-emerald-50 text-emerald-600 dark:bg-emerald-900/30 dark:text-emerald-300">
            <svg width="20" height="20" viewBox="0 0 24 24" fill="none">
              <circle cx="9" cy="8" r="3" stroke="currentColor" strokeWidth="1.8" />

              <path d="M4.5 18C5.2 15.8 6.8 14.5 9 14.5C11.2 14.5 12.8 15.8 13.5 18" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

              <path d="M16 9L18 11L21 7.5" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
          </div>
        </td>

        <td className="px-5 py-4 align-top text-sm font-semibold text-slate-950 dark:text-slate-100">
          Internal users
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Team, QA, admin, developer traffic
        </td>

        <td className="px-5 py-4 align-top text-sm leading-6 text-slate-600 dark:text-slate-300">
          Mark as internal
        </td>
      </tr>
    </tbody>
  </table>
</div>

<Warning>
  Do not rely on only one signal to detect bots. Use multiple signals like user agent, IP pattern, event frequency, session behavior, and environment.
</Warning>

***

## Suggested event structure for traffic quality

Send traffic-related properties with important events so Twinalyze can detect suspicious activity more accurately.

```json theme={null}
{
  "eventName": "page_view",
  "userId": "user_123",
  "deviceId": "device_456",
  "sessionId": "session_789",
  "properties": {
    "environment": "production",
    "platform": "web",
    "userAgent": "Mozilla/5.0...",
    "referrer": "https://google.com",
    "isInternalUser": false,
    "isTestUser": false,
    "source": "organic",
    "campaign": "summer_sale"
  }
}
```

***

## Before going live

<div className="not-prose overflow-hidden rounded-3xl border border-slate-200 bg-white shadow-sm dark:border-slate-700 dark:bg-slate-900">
  <div className="border-b border-slate-200 bg-gradient-to-r from-blue-50 to-white px-6 py-5 dark:border-slate-700 dark:from-slate-800 dark:to-slate-900">
    <p className="text-lg font-semibold tracking-wide text-blue-700 dark:text-blue-300">
      Final quality checklist
    </p>

    <p className="mt-2 max-w-2xl text-sm leading-6 text-slate-700 dark:text-slate-300">
      Verify your tracking before launch
    </p>
  </div>

  <div className="grid gap-4 p-5 md:grid-cols-2">
    <div className="rounded-2xl border border-slate-200 bg-slate-50 p-5 transition hover:-translate-y-0.5 hover:border-blue-200 hover:shadow-md dark:border-slate-700 dark:bg-slate-950 dark:hover:border-blue-700">
      <div className="mb-4 flex h-11 w-11 items-center justify-center rounded-xl bg-blue-100 text-blue-600 dark:bg-blue-900/30 dark:text-blue-300">
        <svg width="22" height="22" viewBox="0 0 24 24" fill="none">
          <path d="M5 7H19" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M5 12H14" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M5 17H11" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M16 15L18 17L21 13.5" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round" />
        </svg>
      </div>

      <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
        Event names are consistent
      </div>

      <p className="mt-2 text-sm leading-6 text-slate-600 dark:text-slate-300">
        Use one clear name for each action across Web, Android, iOS, Flutter, and React Native.
      </p>
    </div>

    <div className="rounded-2xl border border-slate-200 bg-slate-50 p-5 transition hover:-translate-y-0.5 hover:border-blue-200 hover:shadow-md dark:border-slate-700 dark:bg-slate-950 dark:hover:border-blue-700">
      <div className="mb-4 flex h-11 w-11 items-center justify-center rounded-xl bg-emerald-100 text-emerald-600 dark:bg-emerald-900/30 dark:text-emerald-300">
        <svg width="22" height="22" viewBox="0 0 24 24" fill="none">
          <path d="M12 3L19 6V11C19 15.5 16.2 19.5 12 21C7.8 19.5 5 15.5 5 11V6L12 3Z" stroke="currentColor" strokeWidth="1.8" strokeLinejoin="round" />

          <path d="M9 12L11 14L15.5 9.5" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round" />
        </svg>
      </div>

      <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
        Critical events are tested
      </div>

      <p className="mt-2 text-sm leading-6 text-slate-600 dark:text-slate-300">
        Test signup, checkout, payment, purchase, notification, and screen events.
      </p>
    </div>

    <div className="rounded-2xl border border-slate-200 bg-slate-50 p-5 transition hover:-translate-y-0.5 hover:border-blue-200 hover:shadow-md dark:border-slate-700 dark:bg-slate-950 dark:hover:border-blue-700">
      <div className="mb-4 flex h-11 w-11 items-center justify-center rounded-xl bg-purple-100 text-purple-600 dark:bg-purple-900/30 dark:text-purple-300">
        <svg width="22" height="22" viewBox="0 0 24 24" fill="none">
          <path d="M4 7H20" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M7 12H17" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M10 17H14" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M6 4H18C19.1 4 20 4.9 20 6V18C20 19.1 19.1 20 18 20H6C4.9 20 4 19.1 4 18V6C4 4.9 4.9 4 6 4Z" stroke="currentColor" strokeWidth="1.8" />
        </svg>
      </div>

      <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
        Properties are valid
      </div>

      <p className="mt-2 text-sm leading-6 text-slate-600 dark:text-slate-300">
        Required properties should be present, correctly typed, and consistent.
      </p>
    </div>

    <div className="rounded-2xl border border-slate-200 bg-slate-50 p-5 transition hover:-translate-y-0.5 hover:border-blue-200 hover:shadow-md dark:border-slate-700 dark:bg-slate-950 dark:hover:border-blue-700">
      <div className="mb-4 flex h-11 w-11 items-center justify-center rounded-xl bg-orange-100 text-orange-600 dark:bg-orange-900/30 dark:text-orange-300">
        <svg width="22" height="22" viewBox="0 0 24 24" fill="none">
          <circle cx="9" cy="8" r="3" stroke="currentColor" strokeWidth="1.8" />

          <path d="M4.5 18C5.2 15.8 6.8 14.5 9 14.5C11.2 14.5 12.8 15.8 13.5 18" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M16 8H21" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M16 12H20" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />

          <path d="M16 16H19" stroke="currentColor" strokeWidth="1.8" strokeLinecap="round" />
        </svg>
      </div>

      <div className="text-sm font-semibold text-slate-950 dark:text-slate-100">
        Test traffic is separated
      </div>

      <p className="mt-2 text-sm leading-6 text-slate-600 dark:text-slate-300">
        Use environment, internal user, and test user properties to protect production reports.
      </p>
    </div>
  </div>
</div>

***

<div className="twinalyze-bottom-nav">
  <a href="/overview/Data/auto-capture-events" className="twinalyze-nav-side">
    <span className="twinalyze-nav-arrow">‹</span>
    <span>Previous</span>
  </a>

  <a href="/overview/Data/troubleshooting" className="twinalyze-nav-center">
    <strong>Troubleshooting</strong>
    <span>Go to troubleshooting if have any problem.</span>
  </a>

  <a href="/overview/Data/troubleshooting" className="twinalyze-nav-side">
    <span>Next</span>
    <span className="twinalyze-nav-arrow">›</span>
  </a>
</div>
