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

# Fix common issues with Pharos visibility tracking

> Step-by-step guidance for fixing empty dashboards, stuck analyses, missing provider data, pixel tracking problems, and other common issues in Pharos.

Most issues in Pharos fall into a small number of categories: data that hasn't appeared yet because setup is still running, a configuration step that was missed, or a transient error from an external service. Work through the relevant section below to resolve the issue.

***

## Dashboard shows no data or empty charts

Your Dashboard will be empty until at least one analysis has completed and your prompts have data associated with them.

<Steps>
  <Step title="Check whether setup is still running">
    Look for a progress banner at the top of your Dashboard. If it's visible and shows a stage like "Querying AI providers..." or "Calculating visibility scores...", the first analysis is still in progress. Wait for it to complete — this typically takes 15–30 minutes for a new account.
  </Step>

  <Step title="Confirm you've added prompts">
    If there's no progress banner and no data, go to **Prompts** and check whether any prompts appear. An analysis with zero prompts produces no data. Add at least a few prompts that reflect questions your customers ask AI assistants, then wait for the next scheduled run.
  </Step>

  <Step title="Refresh the page">
    Once the progress banner disappears, refresh your browser. The Dashboard charts load automatically but may occasionally need a manual refresh to reflect the latest data.
  </Step>

  <Step title="Check the date range filter">
    If prompts exist and the setup is complete but charts still appear empty, check the date range selector in the top-right of the Dashboard. If you've selected a custom range that predates your first analysis, no data will match. Switch to **Last 30 days** to reset it.
  </Step>
</Steps>

<Tip>
  The Dashboard shows a "No visibility data yet" message with an **Add prompts** button when setup is complete but no prompts have been analyzed. This is the most reliable indicator that prompts are missing.
</Tip>

***

## Analysis stuck in progress

The progress banner on your Dashboard tracks the current stage of brand analysis. It normally advances through these stages: starting → querying AI providers → discovering follow-up questions → calculating scores → generating recommendations → complete.

<Steps>
  <Step title="Wait for the normal window">
    The full analysis pipeline takes 15–30 minutes for most accounts. If the banner has been showing for less than 45 minutes, wait before taking any action.
  </Step>

  <Step title="Check for a 'Score calculation pending' message">
    If the banner shows "Score calculation pending," Pharos has detected that the scoring step needs to retry. This recovers automatically — no action is needed. The banner will advance on its own within a few minutes.
  </Step>

  <Step title="Refresh after 45 minutes">
    If the banner shows the same stage for more than 45 minutes with no change, refresh the page. Pharos has an auto-recovery mechanism that detects stuck jobs and resumes them. A page refresh will show you the current state.
  </Step>

  <Step title="Contact support if the banner shows 'Setup failed'">
    If the banner shows "Setup failed," the analysis encountered an error it could not recover from automatically. Use the **Help** menu in the app to contact support, and include your brand name and the approximate time the analysis started.
  </Step>
</Steps>

<Warning>
  Do not add or delete prompts while an analysis is in progress. Changes made during an active run will be picked up in the next scheduled analysis, not the current one.
</Warning>

***

## Some AI platform responses are missing

If you notice that responses from a specific provider (for example, ChatGPT or Gemini) are absent or incomplete, it may be due to a temporary provider failure.

<Steps>
  <Step title="Look for a provider failure alert">
    On the **Prompts → Responses** tab, a yellow alert banner appears when one or more AI providers returned errors in the last 24 hours. The banner names the affected providers and notes that data may be incomplete. This is informational — no action is required from you.
  </Step>

  <Step title="Check the provider column in the responses table">
    Filter the responses table by the provider you're investigating. If rows exist but responses are missing for recent dates, it's likely a transient API issue on the provider's end. Pharos will retry failed queries in the next scheduled run.
  </Step>

  <Step title="Wait for the next analysis cycle">
    Provider failures are typically short-lived. The next scheduled analysis will re-query any prompts that returned errors. If a provider has been consistently absent for more than 48 hours, contact support.
  </Step>
</Steps>

<Info>
  Pharos tracks provider failures per brand. If you manage multiple brands, a failure on one brand does not necessarily mean other brands are affected.
</Info>

***

## Pixel not tracking AI traffic

The Pharos Pixel attributes web traffic that arrives from AI platforms so you can measure how much of your site traffic originates from ChatGPT, Perplexity, and similar sources.

<Steps>
  <Step title="Verify the pixel snippet is installed">
    The pixel is a JavaScript snippet that must be present on every page you want to track. Go to **Settings → Pixel** and copy the snippet. Confirm it appears in the `<head>` of your site's HTML — not just the homepage, but on all pages.
  </Step>

  <Step title="Check that the snippet loads before content">
    Place the pixel snippet as early as possible in the `<head>` tag, before other scripts. If it loads late or is deferred, sessions from AI referrers may not be attributed correctly.
  </Step>

  <Step title="Disable ad blockers or browser extensions during testing">
    Some browser extensions block tracking scripts. When testing whether the pixel fires correctly, use a private browsing window with extensions disabled, or test from a different browser.
  </Step>

  <Step title="Wait 24 hours before checking for data">
    AI traffic attribution data typically takes up to 24 hours to appear in the AI Traffic section of your Dashboard after the pixel is installed correctly.
  </Step>
</Steps>

<Warning>
  If you install the pixel via a tag manager (such as Google Tag Manager), make sure the tag fires on all pages and is not blocked by consent settings or trigger conditions that exclude certain traffic.
</Warning>

***

## Google Analytics or Search Console not connecting

Pharos integrates with Google Analytics 4 and Google Search Console to enrich your visibility data with organic traffic and search performance metrics.

<Steps>
  <Step title="Use the correct Google account">
    When you click **Connect** in **Settings → Integrations**, you'll be redirected to a Google OAuth screen. Make sure you authorize using the Google account that owns or has edit access to the GA4 property or Search Console property you want to connect.
  </Step>

  <Step title="Grant all requested permissions">
    Pharos requests read-only access to your Google Analytics and Search Console data. If you decline any permission during the OAuth flow, the integration will fail. Re-initiate the connection and accept all requested scopes.
  </Step>

  <Step title="Check property access in Google">
    Confirm that the Google account you're using has at least **Viewer** access to the GA4 property in Google Analytics, or **Full** access in Search Console. If the account has no access, the property won't appear in the selection list after authentication.
  </Step>

  <Step title="Disconnect and reconnect if authorization is stale">
    If the integration was previously connected but is now showing an error, the OAuth token may have expired or been revoked. Go to **Settings → Integrations**, disconnect the integration, and reconnect it from scratch.
  </Step>
</Steps>

<Note>
  Search Console properties must be verified before they can be connected. If a property doesn't appear in the list after authenticating, verify it in Google Search Console first.
</Note>

***

## Competitor shows "Pending"

When you add a competitor to Pharos, it appears as "Pending" until the next analysis run includes data for that competitor.

<Steps>
  <Step title="Wait for the next scheduled analysis">
    Competitors are evaluated during each analysis cycle. After you add a competitor, it will show data once the next scheduled run completes — typically within 24 hours. No action is needed.
  </Step>

  <Step title="Confirm the competitor's domain is correct">
    If a competitor has been pending for more than 48 hours, check that the domain you entered is correct and matches what the AI platforms would use to identify the brand. Go to **Settings** and review the competitor entry.
  </Step>
</Steps>

***

## Team member invite not received

If a team member hasn't received their invitation email after you sent it from **Settings → Team**, work through the steps below.

<Steps>
  <Step title="Ask them to check their spam or junk folder">
    Invitation emails are occasionally filtered by spam systems, especially for corporate email domains with strict filtering. The email comes from Pharos — ask the invitee to search for it in all folders before assuming it wasn't sent.
  </Step>

  <Step title="Verify the email address">
    Go to **Settings → Team** and confirm the email address you entered is correct. A typo in the address means the invite was delivered to the wrong inbox.
  </Step>

  <Step title="Resend the invite">
    From **Settings → Team**, find the pending invite and click **Resend**. This generates a new link with a fresh 7-day expiry and sends a new email.
  </Step>

  <Step title="Check for pending invites from their side">
    Invite emails include a direct link, but the invitee can also accept by navigating to the Pharos sign-up page and entering the same email address. Pharos will detect the pending invite and prompt them to join.
  </Step>
</Steps>

***

## CSV export is empty

The **Export CSV** button on the Dashboard and Prompts pages downloads the data currently visible in the UI. If the exported file is empty or has only a header row, one of the following is likely the cause.

<Steps>
  <Step title="Confirm data is visible before exporting">
    The Export CSV button is disabled when there's no data to export. If it's enabled but the file is empty, check that the charts or table on screen are actually showing data — if they show "No data" or loading skeletons, the export will reflect that.
  </Step>

  <Step title="Check your active filters">
    On the Prompts page, the CSV export respects all active filters (brand mention type, coverage, persona, search query, and intent). If your filters are too narrow, the visible rows — and therefore the export — may be empty. Click **Clear all** next to the filter bar to reset filters, then export again.
  </Step>

  <Step title="Check the date range on the Dashboard">
    On the Dashboard, the CSV export includes only data from the currently selected date range. If you've selected a range that predates your first analysis, the export will be empty. Switch to **Last 30 days** and try again.
  </Step>
</Steps>

<Tip>
  If you're exporting from the Dashboard and only need visibility scores, make sure you visit the **Sentiment** tab at least once before exporting — sentiment data loads on demand and is included in the Dashboard CSV only after the tab has been opened.
</Tip>
