# Tessera v1.1 released, with smoother and temporally stable embeddings

*2026-06-12 — note*


[Frank Feng](https://www.cst.cam.ac.uk/people/zf281) and I [announced TESSERA v1.1](https://geotessera.org/blog/2026-06-09-tessera-v1-1)
on behalf of [the team](https://geotessera.org/about#:~:text=for%2520Science%2520%C2%B7%2520Isambard-,People,-Lead%2520Faculty) earlier this week, and I wanted to follow up here with a more
visual explanation of what changed as I got quite a few questions about it\!

v1.1 is a retrained successor to the [original v1.0 model](https://anil.recoil.org/papers/2025-tessera) that
[Frank Feng](https://www.cst.cam.ac.uk/people/zf281) and the team have been hammering on for months. Crucially, since we
pre-generate embedding 'map tiles', the new release is a drop-in replacement if
you just swap tiles; the basic format of 128 dimensions is unchanged.  Accuracy
of your tasks should improve in all cases (a trend which will continue as we
train better models with more data and training FLOPS).

## Fewer artefacts in low observation areas

Tessera v1.0 could sometimes produce noisier tiles in regions with few clear
satellite observations (e.g. due to persistent cloud or satellite sensor gaps).
This exhibited as boundary-like seams in the tiles where the inferred
embeddings didn't quite align; e.g. along Sentinel-1 ascending/descending
coverage edges where one side of the line might have ~50 valid observations and
the other ~150.

Tessera v1.1 now handles both sparse and imbalanced observation patterns
gracefully! If your region of interest was small and didn't straddle a
problematic tile you'll see no difference, but large-scale analyses should get
cleaner.

The easiest way to see all this is to look at the embeddings themselves in the
[TZE explorer](https://tze.geotessera.org). In this video I flip between the
v1.0 and v1.1 embeddings over the same regions, visualised in false colour:

<div class="video-center"><iframe title="" width="100%" height="315px" src="https://crank.recoil.org/videos/embed/297de7c9-9cea-4051-8b27-041fffa90e72" frameborder="0" allowfullscreen sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe></div>

What you're looking at in the v1.0 layer are the grid-like seams running
through an otherwise homogeneous landscape (Ireland doesn't really have those
jagged lines, you can confirm by visiting my lovely home).

What's happening is that the number of valid observations jumps across the
line, and the old v1.0 model showed that difference up into the embeddings. The
speckly patches are areas where persistent cloud left the model with too few
clean observations to produce a stable representation.

We then switch to the v1.1 layer, and the seams are gone and the noisy patches
resolve into a smooth structure that follows the actual land cover. It's *very*
satisfying to click around the 10m² pixels and watch embeddings that used to
flicker between years settle down into stable trajectories in [the explorer](https://tze.geotessera.org)\!

## Temporal stability

If you're doing analysis over a long period of time, then the 128-dimensional
embeddings are now much more consistent year-on-year for the same location.
This is a big deal for tasks like change detection, trend analysis, and even
just convenience since training a classifier on one year and applying it to
another is now much more accurate.

<figure class="image-center"><img src="/images/tessera11-temporal-drift.webp" alt="Differences in the same region across years with Tessera v1.0 and v1.1 (credit: Jovana Knezevic)" title="Differences in the same region across years with Tessera v1.0 and v1.1 (credit: Jovana Knezevic)" loading="lazy" srcset="/images/tessera11-temporal-drift.768.webp 768w, /images/tessera11-temporal-drift.640.webp 640w, /images/tessera11-temporal-drift.480.webp 480w, /images/tessera11-temporal-drift.320.webp 320w, /images/tessera11-temporal-drift.1024.webp 1024w"><figcaption>Differences in the same region across years with Tessera v1.0 and v1.1 (credit: Jovana Knezevic)</figcaption></figure>

This feature won't affect most users,
but we're pretty pleased with how well change detection now works.

## Expanded coastal coverage worldwide

The v1.0 land mask we used to mask out ocean areas was too aggressive, and
dropped legitimate land pixels along coastlines or on small islands. We've
listened to our [mangrove-loving friends](https://www.plantsci.cam.ac.uk/staff/dr-thomas-worthington) and extended the inference
buffer to 20km, which brings coastlines and remote islands properly into
coverage.

<a href="https://tze.geotessera.org/?store=v1.1"> <figure class="image-center"><img src="/images/tze-explorer-v1.1-ss-1.webp" alt="The green false colour is the expanded coastal tiles, which now captures all of the UK including islands" title="The green false colour is the expanded coastal tiles, which now captures all of the UK including islands" loading="lazy" srcset="/images/tze-explorer-v1.1-ss-1.768.webp 768w, /images/tze-explorer-v1.1-ss-1.640.webp 640w, /images/tze-explorer-v1.1-ss-1.480.webp 480w, /images/tze-explorer-v1.1-ss-1.320.webp 320w, /images/tze-explorer-v1.1-ss-1.2560.webp 2560w, /images/tze-explorer-v1.1-ss-1.1920.webp 1920w, /images/tze-explorer-v1.1-ss-1.1600.webp 1600w, /images/tze-explorer-v1.1-ss-1.1440.webp 1440w, /images/tze-explorer-v1.1-ss-1.1280.webp 1280w, /images/tze-explorer-v1.1-ss-1.1024.webp 1024w"><figcaption>The green false colour is the expanded coastal tiles, which now captures all of the UK including islands</figcaption></figure> </a>

## Our coverage maps now include v1.0 and v1.1

I updated the [live coverage map](https://ucam-eo.github.io/tessera-coverage-map/) to now
track both generations side-by-side, so you can see exactly which tiles exist
for v1.0 and v1.1 in any given year:

<div class="video-center"><iframe title="" width="100%" height="315px" src="https://crank.recoil.org/videos/embed/97d422a2-af9c-47b5-947a-c136ad7093b6" frameborder="0" allowfullscreen sandbox="allow-same-origin allow-scripts allow-popups allow-forms"></iframe></div>

This is all updated via a [GitHub Action on ucam-eo/tessera-coverage-map](https://github.com/ucam-eo/tessera-coverage-map/blob/main/.github/workflows/map.yml)
that also updates an index Parquet file of all available manifests.

### Getting the v1.1 embeddings

To get the new embeddings, grab the [geotessera 0.9.0+ release](https://github.com/ucam-eo/geotessera/releases/tag/v0.9.0) of the
[Python library](https://anil.recoil.org/notes/geotessera-python) which went out alongside v1.1. It has a new
`--dataset-version` flag to pick v1.0 or v1.1, and a `--dataset-variant` flag
now that multiple parties are generating embeddings for the community:

- `vultr` is the original [v1.0 global run](https://geotessera.org/blog/2026-03-30-training-and-inference-at-scale)
- `cambridge` is our [OxCaml-generated](https://www.tunbury.org/2026/05/20/processing-uk-azure-spot/) v1.1 run for early adopters
- We're working on a Zarr-native full global v1.1 with [Cyclops.ai](https://www.cyclops.ai/), covering 2017-2025 that will become the default once it lands.

Use [uvx](https://docs.astral.sh/uv/) to try this without any installation:

```bash
uvx geotessera download \
  --country "United Kingdom" \
  --year 2024 \
  --dataset-version v1.1 \
  --dataset-variant cambridge \
  --format npy \
  --output ./uk-v1.1
```

All the embeddings (both versions) are also now in the `s3://tessera-embeddings`
public bucket on AWS Open Data, which geotessera 0.9 switches to by default.
Spare a kind thought for "okavango", our single overworked Cambridge server that served every
TESSERA embedding for the first six months without falling over (much)\!
But seriously, at some point, we're going to have to turn off \`okavanago' as it's
taking up a significant amount of the egress bandwidth for Cambridge, so I encourage
users to upgrade to geotessera 0.9 as soon as possible just to change the source
of your embeddings download. Let me know if you have any problems\!

### Also on Hugging Face now

We're also now on [Hugging Face](https://huggingface.co/geotessera/TESSERA-V-1.1)
with the full v1.1 (and [v1.0](https://huggingface.co/geotessera/TESSERA-V-1.0))
model weights, with checkpoints for both the Microsoft Planetary Computer and
AWS Open Data preprocessing backends. If you'd rather run inference yourself
or fine-tune on your own data, everything you need is there, all under CC0 as
usual. Do [let us know](https://eeg.zulipchat.com) if you fine-tune a model as
we'd love to see how it goes.

If there's a region of the world you need for your own research urgently,
please do [request an ROI](https://github.com/ucam-eo/geotessera/issues) on the
geotessera issue tracker and we'll prioritise it in the generation queue.
Otherwise, sit tight as we'll have full global 2017-2025 coverage within a few
months\!

See also coverage from the [Meteorological Technology trade magazine](https://www.meteorologicaltechnologyinternational.com/news/satellites/cambridge-ai-tool-converts-satellite-archives-into-accessible-earth-intelligence.html) about the release.
Synopsis: TESSERA v1.1 is a drop-in retrained model that fixes the tiling artefacts of v1.0, with embeddings now being served from AWS S3 and model weights up on Hugging Face.
Words: 963
DOI: 10.59350/vcqjp-24y05

Discussion:
- Bluesky: <https://bsky.app/profile/anil.recoil.org/post/3mo3xk3uxik27>
- LinkedIn: <https://www.linkedin.com/posts/anilmadhavapeddy_weve-released-thetesserav11-geospatial-ugcPost-7471208346109345792-sD5v>
- Mastodon: <https://amok.recoil.org/@avsm/116737638764809768>
- Twitter: <https://x.com/avsm/status/2065442624685703186>

## Related

- [Tessera 1.0 to 1.1 embeddings](https://anil.recoil.org/videos/297de7c9-9cea-4051-8b27-041fffa90e72) (video, 2026-06-12)
- [Tessera v1 and v1.1 coverage map](https://anil.recoil.org/videos/97d422a2-af9c-47b5-947a-c136ad7093b6) (video, 2026-06-12)
- [TESSERA: Temporal Embeddings of Surface Spectra for Earth Representation and Analysis](https://anil.recoil.org/papers/2025-tessera) (paper, 2025-11-01)
- [GeoTessera Python library released for geospatial embeddings](https://anil.recoil.org/notes/geotessera-python) (note, 2025-08-31)

---
Canonical: https://anil.recoil.org/notes/tessera-v11-out
Type: note
Tags: tessera, spatial, ai, satellite
