Home / Science / Earth sciences / Remote sensing and GIS / Spectral index calculatorTool #135

NDVI and spectral index calculator for your own GeoTIFF: NDWI, MNDWI, NBR, EVI, SAVI, NDBI, in the browser

Open your own multiband GeoTIFF or one file per band. Map the bands, apply the product's scale and offset, and get NDVI, NDWI, MNDWI, NBR, EVI, SAVI, NDBI or your own normalised difference, with a coloured map, histogram, statistics, a threshold area and downloads as GeoTIFF or CSV. Files never leave your device.

Keep it one tap away for everyday use.

Bookmark Spectral index calculator?

Press Ctrl + D now. Your browser opens its own bookmark box, where you choose the name and folder.

  1. GeoTIFF
  2. Bands
  3. Index
  4. Download
Nothing is uploadedWorks offline once open

Image

One multiband GeoTIFF, or one file per band (same size). Up to 300 MB per file and 80 million values in all. Uncompressed, LZW, Deflate or PackBits; not JPEG-compressed or BigTIFF. Your files stay on this device: they are read in your browser and never uploaded.

Use the scale and offset from your product's own documentation (many surface reflectance products store whole numbers). Leave 1 and 0 if the bands already hold reflectance.

Index

Result

The GeoTIFF is 32-bit float with the same georeferencing as your file and no data as NaN. The CSV holds up to 100,000 evenly spaced pixels.

Download

What it does

Satellites and drones record how much light the ground reflects in several bands: blue, green, red, near infrared (NIR) and shortwave infrared (SWIR). Healthy plants reflect a lot of NIR and little red; water absorbs NIR; burned ground reflects more SWIR. A spectral index combines two or three bands so these differences stand out.

This tool reads your own GeoTIFF files in the browser, works out the index for every pixel, and shows a coloured map, a histogram and statistics. It counts the pixels above or below a threshold and turns them into an area. You can download the index as a 32-bit GeoTIFF that keeps the original georeferencing, so it opens in GIS software, or as a CSV sample.

Your files stay on this device. Nothing is uploaded; the page works offline once loaded.

How to use it

  1. Press Open GeoTIFF files. Choose one multiband file, or several single-band files of the same size (for example one file per band from a satellite download).
  2. Tell the tool which band is blue, green, red, NIR, SWIR1 and SWIR2. You only need the bands your index uses.
  3. Enter the scale and offset from your product’s documentation if the file stores whole numbers instead of reflectance. Leave 1 and 0 otherwise.
  4. Pick the index, the colours and a threshold. Read the map, histogram and numbers, and download what you need.

The indices

  • NDVI = (NIR − Red) ÷ (NIR + Red): plant cover and vigour. Bare soil is near 0.1 to 0.2; dense green crops 0.6 to 0.9; water is below 0.
  • EVI = 2.5 × (NIR − Red) ÷ (NIR + 6 Red − 7.5 Blue + 1): like NDVI but saturates less over dense forest. It needs reflectance (0 to 1).
  • SAVI = (1 + L) × (NIR − Red) ÷ (NIR + Red + L): reduces the effect of bright soil; L = 0.5 suits most places.
  • NDWI = (Green − NIR) ÷ (Green + NIR) and MNDWI = (Green − SWIR1) ÷ (Green + SWIR1): open water is above 0. MNDWI separates water from towns better.
  • NBR = (NIR − SWIR2) ÷ (NIR + SWIR2): burned areas drop sharply. Compare before and after a fire.
  • NDBI = (SWIR1 − NIR) ÷ (SWIR1 + NIR): built-up land and bare ground are higher.
  • Custom: (a − b) ÷ (a + b) for any two bands.

Worked example

Press Use the example scene: a made-up 200 × 150 pixel image of 30 m pixels with a lake, forest, fields, a town, bare soil and a burn scar. With NDVI above 0.3, the forest and green fields stand out: 53 % of the pixels, 14.4 km². Switch to NDWI above 0 to measure the lake (10 %, 2.79 km²), or to NBR below −0.2 to pick out the burn scar alone (5 %, 1.41 km²).

Good to know

  • Indices only mean what they should on surface reflectance (atmospherically corrected) data. Top-of-atmosphere data gives shifted values.
  • Clouds, shadows and snow confuse every index; mask them first if you can.
  • Areas use the file’s own pixel size (projected files in metres, or degrees converted cell by cell). If the file has no georeferencing, enter a pixel size.

FAQ

Which files can it open? Classic TIFF and GeoTIFF with 8, 16 or 32-bit integers or 32 or 64-bit floats, in strips or tiles, uncompressed or compressed with LZW, Deflate or PackBits. BigTIFF and JPEG compression are not supported yet.

Is anything sent to a server? No. The page has no upload code; the file is read into memory in your browser and dropped when you close the tab.

Where the numbers come from

  • Index formulas (NDVI, NDWI after McFeeters, MNDWI after Xu, NBR, EVI with its standard coefficients 2.5, 6, 7.5 and 1, SAVI after Huete, NDBI): the published equations, written by fibub; no data tables are copied.
  • TIFF 6.0 and the GeoTIFF tags (pixel scale, tie point, geokeys): open specifications, reader and writer written by fibub; Deflate uses the fflate library (MIT).
  • Pixel areas on geographic grids use a sphere of radius 6 371 008.8 m (IUGG mean radius).
  • The example scene and its reflectance values are made up by fibub for illustration.

Standard scientific values, such as constants, atomic weights and melting points, are facts found in every textbook; we name where ours were checked. If you are an author or publisher and want a value, a credit or a table changed or removed, tell us and we will act quickly.

Last updated 2026-11-08.

Change log for Spectral index calculator

  1. Add the spectral index calculator with a GeoTIFF reader and writer (#135) Details on GitHub

Every change to fibub

Related tools

GPS track analyser #134 Open a GPX file or paste a CSV of time, latitude, longitude and elevation. Get the distance on the WGS84 ellipsoid, moving and stopped time, average and top speed, climbing with a noise threshold, splits per km or mile, a plan, an elevation profile and a speed chart. The file never leaves your device. Biodiversity indices #39 Paste species counts for one or more sites and get Shannon, Simpson, evenness, Chao1 richness, rarefaction curves and Bray-Curtis similarity in one table. Runs in your browser. Publication plot maker #27 Paste columns or open a CSV or Excel file and get a clean scientific figure with error bars, sized for a journal column. Download vector SVG or PDF, or PNG at 300 or 600 dpi. Your data stays in your browser. FITS viewer and header inspector #21 Open a FITS image to view it with a proper stretch, read pixel values and sky coordinates, and see its full header. Or drop a whole night's files to list exposure, filter and temperature and total your time per filter. Nothing is uploaded. Leaf area and canopy cover analyser #323 Measure leaf area from a scan or phone photo with a reference square or a scale line, leaf by leaf, or the percentage of a photo covered by green plants. Automatic Otsu threshold you can override. The photo stays in your browser. Leaf disease severity #328 Measure the share of a leaf covered by lesions, spots or yellowing from a photo, with colour rules you can tune, count the spots, and place the leaf on your own severity class scale. Several leaves averaged, CSV download. The photo stays in your browser. Canopy gap analyser (hemispherical photos) #338 Analyse a fisheye photo taken up through a forest canopy: circular mask, sky versus canopy from the blue channel with Otsu's threshold, gap fraction in zenith rings, canopy openness and effective leaf area index by Miller's formula. The photo stays in your browser. DEM slope, aspect and hillshade #888 Open a digital elevation model (GeoTIFF or ESRI ASCII grid) and get slope (Horn's method), aspect, hillshade with your own sun position, and general, profile and plan curvature, as coloured maps with statistics, slope classes and an aspect breakdown. Degree grids such as SRTM are handled with the cell size worked out for each latitude. Download PNG, GeoTIFF or ASCII grid. Files never leave your device. Vector map viewer #893 Open a zipped shapefile, GeoJSON, KML or KMZ, or a CSV with WKT, and see it on a map you can pan and zoom. Read the attribute table, get each feature's area, perimeter and length on the WGS 84 ellipsoid, and save the layer as GeoJSON, KML or CSV with WKT. Projected shapefiles (UTM, Lambert, Albers, Web Mercator) are converted to latitude and longitude. Files never leave your device. Tissot explorer #894 See how 11 map projections bend the world: Mercator, transverse Mercator, equirectangular, Lambert conformal conic, Albers, azimuthal equidistant and equal-area, stereographic, orthographic, Mollweide and sinusoidal. Tissot ellipses on a world map, and at any point the scale along the meridian and parallel, the areal scale and the angular distortion, compared across all projections. Band combiner #895 Open a multiband GeoTIFF or one file per band, put any three bands on red, green and blue (true colour, colour infrared, SWIR and more), stretch each band (min-max, percentile clip, standard deviation, histogram equalisation or your own limits, plus gamma), read any pixel's values and save the composite as a full-size PNG. Files never leave your device.