# Organizing your raster data

<figure><img src="https://217108486-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmRfGitkyjOEMvVsEyGWN%2Fuploads%2FrGcrJW66fvHDzJMuA1ds%2Fmaps-1x3.png?alt=media&#x26;token=a6ba2d8e-1f95-46db-9fb1-b8bbffc5f172" alt=""><figcaption></figcaption></figure>

To make a large collection of raster data quickly available in Felt, we recommend storing it in [Cloud Optimized Geotiff](https://help.felt.com/upload-anything/raster-infrastructure/cloud-optimized-geotiffs) format in a [cloud storage](https://help.felt.com/upload-anything/raster-infrastructure/broken-reference) bucket, with relevant metadata about your files encoded in [regular patterns](#extracting-properties-with-regex) in their paths.

{% hint style="success" %}
This feature is only available to customers on the [Enterprise plan](https://felt.com/pricing). To upgrade, [contact sales](https://felt.com/sales).
{% endhint %}

### Storage

The easiest way to connect your raster data to Felt is to host it in a cloud storage bucket using one of the following options:

* [Amazon S3](https://help.felt.com/upload-anything/cloud-sources/amazon-s3)
* [Google Cloud Storage](https://help.felt.com/upload-anything/cloud-sources/google-cloud-storage)
* [Azure Blob Storage](https://help.felt.com/upload-anything/cloud-sources/azure-blob-storage)

### Format

[Cloud Optimized GeoTIFFs](https://cogeo.org/) (COGs, for short) are raster files optimized for being read from a remote server, structured in a way that enables efficient cloud workflows.

While Felt can process many raster data formats, COGs will ensure that only the data you actually want to visualize on the map is read. To learn more about how to create COGs that can be streamed efficiently by Felt, [click here](https://help.felt.com/upload-anything/raster-infrastructure/cloud-optimized-geotiffs).

### Structure

Storing your files in cloud storage with a well-defined, strict naming pattern is the best way of making your data discoverable:

* Use folders to organize your files into projects.
* Encode properties that you'd like to search by into the file path.

Here's an example of a naming pattern:

```
s3://my-bucket/{project}/{type}_{YYYYMMDD}_r{resolution}.tiff
```

A file following that pattern would look like this:

```
s3://my-bucket/fire_hazards/dem_20250515_r35.tiff
```

#### Extracting properties with regex

Using [regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions), Felt can extract metadata properties from the path to files in a cloud storage bucket. Here's a set of regular expressions that can be used to extract the properties defined in the template above.

<figure><img src="https://217108486-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmRfGitkyjOEMvVsEyGWN%2Fuploads%2FUSweD6msOP9gD3xxgjbQ%2Fimage.png?alt=media&#x26;token=f2a635eb-306b-4963-be57-ad7ce19beba3" alt=""><figcaption></figcaption></figure>

In this example, the properties `project`, `type`, `date` and `resolution` will be extracted during bucket inspection, and can be later used to filter and search for objects.

### STAC

If your metadata storage needs go beyond a string pattern, or if the number of objects stored is either very large, or very dynamic, using a [Spatio-Temporal Asset Catalog](#stac) allows storage of metadata (including spatial and temporal extents) in an explicit format. Both static STACs in JSON format or dynamic STAC APIs can be added to Felt as sources.

Felt can load data directly from [cloud storage](https://help.felt.com/upload-anything/raster-infrastructure/broken-reference), or from any other storage location that exposes the data over HTTPS. The closer your data is to your Felt instance (if you are using a VPC), the less latency you will have in tile serving.

If you wish to [stream your data](https://help.felt.com/upload-anything/raster-infrastructure/cloud-optimized-geotiffs) without importing the entire file into Felt, the data storage location must support [range requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Range_requests).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.felt.com/upload-anything/raster-infrastructure/organizing-your-raster-data.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
