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

# Add sites

> How suppliers add the sites of a project in Certify, including GeoJSON and CSV uploads, site hierarchies and spatial matching

Sites are the key locations where project activities take place. This guide covers how to add them in Certify. For guidance on specific site types under each protocol, and which metadata and links they expect, see the [Sites reference](/user-guides/certify/project-assets/sites-reference).

<Info>
  Sites are currently supported for:

  * **Reforestation projects** using the [Reforestation protocol](https://registry.isometric.com/protocol/reforestation/1.2)
  * **Enhanced Weathering projects** using the [Enhanced Weathering in Agriculture protocol](https://registry.isometric.com/protocol/enhanced-weathering-agriculture/1.2)
</Info>

## The sites page

Open the [Certify dashboard](https://registry.isometric.com/account/certify), select your project, and click **Sites** in the left-hand navigation.

The page shows one tab per site type configured for your project, plus a tab for each type of measurement sample that can be recorded anywhere in your project. Each site tab shows how many sites of that type exist, a description of what the type represents, and a table of the sites themselves with their names, reference IDs, geometry and metadata.

From a site tab you may:

* **Add** sites of that type.
* **Export** sites of that type, and of any type below it in the hierarchy, as CSV or GeoJSON.
* **View on map** to see every site in the project on one map.
* Select sites with the checkboxes to delete them.

<Note>
  Only project editors can add or delete sites. Sites that are already in use — referenced by a measurement sample or a carbon accounting component — and sites whose validation has been completed cannot be deleted. A lock icon will be shown for any site that cannot be deleted.
</Note>

## Creating sites

Click the **+ Add** button to add a new Site and provide a unique name and reference ID. The UI will also typically ask for a file upload to define the site's geography. The type of upload depends on the site type's geography, defined by the protocol.

| Geography | Upload                    | Notes                                                                  |
| --------- | ------------------------- | ---------------------------------------------------------------------- |
| **Area**  | One or more GeoJSON files | Polygon and MultiPolygon features. Areas cannot be uploaded via CSV.   |
| **Point** | One or more CSV files     | A `latitude` and `longitude` column per site.                          |
| **None**  | A short form in Certify   | Just a name and reference ID; the site is defined by what it contains. |

Sites at the top of a hierarchy — for example a Reforestation **Project Area** or an Enhanced Weathering **Removal area** — combine both: the parent's name and reference ID and GeoJSON for its child fields are provided in the same step.

<Tip>
  Child site types that are always created underneath a parent, such as a Reforestation or Enhanced Weathering **Field**, have no **Add** button of their own. Add them from their parent's **Add** flow instead.
</Tip>

On each upload dialog, you will be able to download:

* A **template**, containing the exact columns or GeoJSON properties expected for that site type in your project, with no data.
* An **example**, the same structure filled in with placeholder values.

<Tip>
  We recommend always checking the template on your project first. Metadata columns and properties may be specific to a protocol or module version, so a file that worked for another project or protocol may not include the right fields.
</Tip>

## Reference IDs and geometry

Each site needs a unique `reference_id` within your organisation. This is how you refer to the site later: linking activities to it, attaching measurement samples, and matching exports to your own records. See [Supplier Reference ID](/user-guides/certify/supplier-reference-id) for conventions.

Geometry must follow the [FAIR principles](/user-guides/certify/geospatial/principles) for geospatial data, and coordinates are longitude-latitude pairs in WGS 84, as the GeoJSON specification requires. Certify renders uploaded geometry on a map so you can check it before continuing.

## How sites are linked to each other

Certify builds the site hierarchy for you in one of two ways, depending on the protocol.

<Tabs>
  <Tab title="Explicit links" icon="link">
    The parent is named directly. In practice this means you create the parent and upload its children in the same step, so no reference ID needs to be typed twice.

    This is how Reforestation Project Areas link to Fields, and how Enhanced Weathering Removal areas link to Fields.
  </Tab>

  <Tab title="Spatial matching" icon="draw-polygon">
    Certify links each uploaded site to the parent whose boundary contains its geometry. Matching runs in both directions: uploading a child finds its parent, and uploading a parent picks up children already in the project.

    This is how Reforestation Field Plots link to Fields, and how Enhanced Weathering Measurement locations link to Fields.

    <Warning>
      A site whose geometry falls outside every parent boundary is created without a parent. If a site is missing from its parent's tab after upload, check that its coordinates sit inside the parent's polygon.
    </Warning>
  </Tab>
</Tabs>

## Examples

<Tabs>
  <Tab title="Reforestation project area" icon="tree">
    This walkthrough adds a Project Area with two Fields, then the Field Plots inside them.

    <Steps>
      <Step title="Prepare the field boundaries">
        Go to **Sites**, open the **Fields** tab, and download the GeoJSON template.

        Each feature is one field, with `name` and `reference_id` in its `properties`:

        ```json theme={null}
        {
          "type": "FeatureCollection",
          "features": [
            {
              "type": "Feature",
              "geometry": { "type": "Polygon", "coordinates": [[[-0.1296, 51.5196], "..."]] },
              "properties": { "name": "Field 1", "reference_id": "field_1" }
            }
          ]
        }
        ```

        Provide each set of fields that is planted at the same time and with the same species mix as its own feature, since that is what a Field represents.
      </Step>

      <Step title="Create project area with its fields">
        Open the **Project Areas** tab and click **Add**. Enter the project area's **Name** and **Reference ID**, attach one or more field GeoJSON files, and click **Add project area**.

        Certify creates the project area, creates a Field for every feature in the files, and links each Field to the project area.
      </Step>

      <Step title="Upload field plots">
        Open the **Field Plots** tab, click **Add**, and upload the field plot GeoJSON.

        Field plots are matched to their Field by geometry, so there is no parent column to fill in. Field plots are allowed to overlap one another.
      </Step>

      <Step title="Check hierarchy">
        Click a project area in the table to open it. Its page has a tab for each level below it — **Fields** and **Field Plots** — so you can confirm each field plot landed under the right field.

        A project area is validatable, so its page also has a **Requirements** tab listing the validation requirements your VVB will review, along with any [issues](/user-guides/certify/log-of-issues) raised against it.
      </Step>

      <Step title="Add measurements">
        With field plots in place, upload the tree measurements taken in them — see [Add activities](/user-guides/certify/project-assets/add-activities).
      </Step>
    </Steps>
  </Tab>

  <Tab title="Enhanced Weathering removal area" icon="cloud">
    This walkthrough adds a Removal area with its Fields, then the Measurement locations where samples are taken.

    <Steps>
      <Step title="Prepare the field boundaries">
        Go to **Sites**, open the **Fields** tab, and download the GeoJSON template.

        Each feature is one agricultural field where feedstock is applied, with `name`, `reference_id` and `plot_type` in its `properties`:

        ```json theme={null}
        {
          "type": "FeatureCollection",
          "features": [
            {
              "type": "Feature",
              "geometry": { "type": "Polygon", "coordinates": [[[-0.1296, 51.5196], "..."]] },
              "properties": { "name": "Field 1", "reference_id": "field_1", "plot_type": "treatment" }
            }
          ]
        }
        ```

        `plot_type` tells Certify the role the field plays in quantification, and must be one of `control`, `treatment`, `deployment` or `research`. A removal area needs treatment fields where feedstock was spread, control fields without feedstock to compare against, and deployment fields if you are using the 3-plot model. Fields are not allowed to overlap one another.
      </Step>

      <Step title="Create removal area with its fields">
        Open the **Removal areas** tab and click **Add**. Enter the removal area's **Name** and **Reference ID**, attach one or more field GeoJSON files, and click **Add removal area**.

        Certify creates the removal area, creates a Field for every feature in the files, and links each Field to the removal area. A field can belong to more than one removal area.
      </Step>

      <Step title="Upload measurement locations">
        Open the **Measurement locations** tab, click **Add**, and upload a CSV of the latitude-longitude points where samples are collected — where a soil core was extracted, for instance, or an ion exchange resin device installed. Its columns are:

        * `name`
        * `reference_id`
        * `latitude`
        * `longitude`

        Each location is matched to the field whose boundary contains it, so there is no parent column to fill in.
      </Step>

      <Step title="Check hierarchy">
        Click a removal area in the table to open it. Its page has a tab for each level below it — **Fields** and **Measurement locations** — so you can confirm each location landed under the right field.

        A removal area is validatable, so its page also has a **Requirements** tab listing the validation requirements your VVB will review, along with any [issues](/user-guides/certify/log-of-issues) raised against it.
      </Step>

      <Step title="Add sample data">
        With measurement locations in place, upload the samples taken at them — soil, biomass, porewater and ion exchange resin. See [Adding measurement samples](/user-guides/certify/measurement-samples).

        <Warning>
          Sample data can only be uploaded once its measurement locations exist, because every sample must be linked to one.
        </Warning>
      </Step>
    </Steps>
  </Tab>
</Tabs>

## Addressing errors in uploaded data

If a file has the wrong data in it, delete the affected sites with the table checkboxes and **Delete** button, then re-upload the corrected file. Where a site can no longer be deleted — because it is already in use, or its validation has completed — contact your Registry Operations Manager.
