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

# Add data to a lagging goal

> Type results in from a report or upload the report for Levi to read, review the numbers, and see which days are still uncovered

A lagging goal's numbers come from reports the store receives: a guest survey comparison, a sales summary, an audit score. Nothing arrives on its own. **Add data** takes a report in one of two ways, either typed in or uploaded as a file that Levi, the assistant built into Levelset, reads, and saves each figure as a **result** with the dates the report covers. The goal's card, its page, the matrix and every scoreboard update as soon as the results are confirmed. Entering results needs the permission Goals > Enter Results; without it neither button below appears.

Start from the goal: open **Performance > Goals**, the **Lagging** view, click the goal and then **Add result**. Or click **Add data** at the top of the Lagging view and pick the goal when asked **Which goal are these results for?**. The goal decides what kind of report is expected.

## Type in results

Use this for a few numbers from a report you are looking at.

1. Choose **Type it in**.
2. Set the **Report window**, **From** and **To**: the dates printed on the report, not today. It is pre-filled with the period after the last one entered for this goal, or last month.
3. The row already names the goal's **Measure**. Enter the **Score** (or **Value** for a non-percent goal) and, for a guest survey, the **Responses**.
4. For a guest survey, tick **Break out by channel or daypart** to enter a figure for one channel or daypart. If your survey report lists counts per score instead of a percentage, switch on **Full scale (counts at each level)** and enter how many responses gave each score from **Level 1** to **Level 5**; Levelset works the percentage out.
5. Click **Add a measure** to enter another figure from the same report, then **Review**.

## Upload a report

Use this for a whole report. Choose **Upload a report**, then drop a PDF, spreadsheet (.xlsx or .xls), CSV or screenshot on **Drop a file here or choose one**, up to 10 MB. **Levi is reading the report** shows while the figures are read out, then the review opens with every row Levi found. A row whose dates could not be read is skipped and named under **Some rows could not be read**.

## Review and confirm

**Review before confirming** lists each row with its dates, measure, value and responses. Nothing is saved until you confirm, so fix a row here: edit any cell, or remove a row. When the report calls a measure something different from your goal (say "Speed" for **Speed of service**), pick the goal's measure under **Match this measure** so the figure lands on the goal; **Keep as new** saves it under the report's own name instead. Cells Levi was unsure about are highlighted; **Show the report** puts the file beside the table to check them against. The **Confirm** button says how many rows it will save; click it.

If a window already has a result, **Some windows already have results** shows the **Existing** and **New** values side by side. **Replace existing** swaps in the new results and keeps the old ones on the goal's page under **Show replaced results**; **Keep existing** discards the new ones. This is also how a disagreement is cleared: when two results overlap the same days with different figures, the goal's page says **reports disagree** and names the window, and adding the corrected report for that window with **Replace existing** settles it.

## Read the coverage

A goal's number is only as good as the days behind it, so after confirming, **Saved 3 results** is followed by **What this covers** for each measure: a strip of the last 90 days marked **Reported** (a report named those days), **Derived from overlapping reports** (Levelset worked the days out from two reports that overlap) or **Not pinned by any report yet** (no report covers them). **What would fill the gaps** names the report that would cover each gap, for example **Comparison report, Taste of food, all channels, 8/1/26 to 8/15/26 would pin these days**; **Copy** puts that sentence on the clipboard to send to whoever pulls the report. A measure no goal tracks says so; its results are saved and appear once a goal for it exists. Click **Done** to return to the goal.

The same coverage strip and gap list sit on the goal's page under its trend chart, so the gaps can be checked any time.

## Fix a result

On the goal's page, **Results** lists every result in the timeframe. **Edit** on a row changes its **From**, **To**, value and responses; **Save result** stores it and the goal's numbers move with it. **Remove** asks **Remove this result?** and takes it out of every calculation; it stays listed as **Removed** under **Show replaced results**. A result's **Source** column says how it arrived: **Typed in**, **PDF**, **Spreadsheet**, **CSV**, **Screenshot** or **Pasted email**.

## Who can do what

If a button described on this page is missing for you, this table names the permission behind it.

| If you notice this                                                                                          | The permission behind it   |
| ----------------------------------------------------------------------------------------------------------- | -------------------------- |
| No **Add data** on the Lagging view, no **Add result** on a goal, and no **Edit** or **Remove** on a result | Goals > Enter Results      |
| The **Lagging** view is missing                                                                             | Goals > View Lagging Goals |

If you're missing something here, ask whoever manages roles in your organization.

## Common questions

<AccordionGroup>
  <Accordion title="Which goal should I pick for a report with many measures?">
    Any lagging goal of that report kind. Every row you confirm is saved under its own measure, and **What this covers** lists each one, whether or not a goal tracks it yet.
  </Accordion>

  <Accordion title="Levi read a number wrong.">
    Correct the cell on the review table before confirming. After confirming, use **Edit** on the row on the goal's page.
  </Accordion>

  <Accordion title="The file was refused.">
    Only PDF, Excel, CSV and image files up to 10 MB are accepted. For anything else, type the figures in.
  </Accordion>
</AccordionGroup>
