> For the complete documentation index, see [llms.txt](https://help.felt.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.felt.com/upload-anything/stream-large-rasters.md).

# Stream large rasters

Stream Cloud Optimized GeoTIFFs and STAC imagery into Felt, and name your bucket's files so you can search and filter them.

{% hint style="success" %}
Available on the Business and Enterprise plans. [Compare plans](https://felt.com/pricing#compare)
{% endhint %}

Stream terabyte-scale rasters from your bucket without uploading or copying them to Felt. Felt supports [Cloud Optimized GeoTIFFs (COGs)](/upload-anything/stream-large-rasters/cloud-optimized-geotiffs.md) and [SpatioTemporal Asset Catalogs (STACs)](/upload-anything/data-sources/stac.md), and indexes your files by location and metadata so you can search and filter them. You can [style](/styling/style-raster-layers.md) the results like any raster layer.

Streamed rasters aren't limited by the upload file size, and they don't count toward your workspace's processing limit. See [Data limits](/upload-anything/data-limits.md) and [Plan usage](/plans-and-billing/plan-usage.md).

{% embed url="<https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmRfGitkyjOEMvVsEyGWN%2Fuploads%2FpotWKZgx9Aw791Aoq5Vd%2FRasterLaunch%20-%20Preview%20Screen.mp4?alt=media&token=df17d7c7-53f0-4fce-bcc8-8171a2afa835>" %}

## How streaming works

When raster streaming is on your plan, Felt tries to stream every COG you add from a bucket or a URL. If a file can't be streamed, for example because it isn't a valid COG, Felt uploads and processes it instead. The file then counts toward processing like any upload.

In a streamed layer's **Data** tab, **Status** reads **Streaming**. Felt reads the file from its location each time the map needs tiles, so a streamed layer can't be refreshed. To show newer imagery, add the new file to the map as its own layer, and then delete the old layer. See [Refresh data](/upload-anything/refresh-data.md).

## Organize your raster data

For large raster collections, store [Cloud Optimized GeoTIFFs](/upload-anything/stream-large-rasters/cloud-optimized-geotiffs.md) in a bucket. Use a consistent path pattern that includes metadata about each file. See [Extract attributes with regular expressions](#extract-attributes-with-regular-expressions).

<figure><img src="https://217108486-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmRfGitkyjOEMvVsEyGWN%2Fuploads%2Fgit-blob-7843c275b38541460d5703ba3dacc3803edf9cdb%2Fmaps-1x3.webp?alt=media" alt="Three maps of streamed rasters: a land cover classification, building elevation in a city, and night lights."><figcaption></figcaption></figure>

### Storage

Felt streams rasters from these buckets. Each connects as a data source:

* [Amazon S3](/upload-anything/data-sources/amazon-s3.md)
* [Google Cloud Storage](/upload-anything/data-sources/google-cloud-storage.md)
* [Azure Blob Storage](/upload-anything/data-sources/azure-blob-storage.md)

Felt can also stream from any other location that serves files over HTTPS and supports [range requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Range_requests), which let Felt read only part of a file. If your Felt instance is [self-hosted](/administration/self-hosted-deployment.md) in your own virtual private cloud (VPC), storing data close to it reduces the delay in loading tiles.

### Format

Felt can process many raster formats, but a [Cloud Optimized GeoTIFF](https://cogeo.org/) lets Felt read only the data you're viewing on the map. For the settings and commands to create one, see [Cloud Optimized GeoTIFFs](/upload-anything/stream-large-rasters/cloud-optimized-geotiffs.md).

### Structure

A strict naming pattern makes your files easy to find in Felt:

* Use folders to organize files into projects.
* Put the attributes you want to search by into each file's path.

For example, this naming pattern puts a project, a type, a date, and a resolution in each path:

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

A file that follows the pattern looks like this:

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

### Extract attributes with regular expressions

Felt can use [regular expressions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions) to extract attributes from the paths of files in a bucket. In the bucket source's **Extract attributes** section, enter an **Example file path**, then click **Add regex match** for each attribute. Give each one a **Regex**, a **Name**, and a **Type**, such as a string, number, or date. The **Example** column shows what each regex matches in the example path.

For the naming pattern in [Structure](#structure), extract `project`, `type`, `date`, and `resolution` to search and filter files by those attributes.

<figure><img src="https://217108486-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmRfGitkyjOEMvVsEyGWN%2Fuploads%2Fgit-blob-8910a4c8c8f146efb824056caf897373e228d55c%2Fstream-rasters-extract-attributes.png?alt=media" alt="Extract properties table with an example file path and four regular expressions that extract project, type, date, and resolution."><figcaption></figcaption></figure>

### STAC

A SpatioTemporal Asset Catalog (STAC) stores metadata in a defined format, including the area and time period each file covers. Use one when your metadata doesn't fit a naming pattern, or when you have a very large or frequently changing set of files. Felt can add both static STAC catalogs in JSON and dynamic STAC APIs as sources. See [STAC](/upload-anything/data-sources/stac.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.felt.com/upload-anything/stream-large-rasters.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
