#OpenLandMap
Ensemble Digital Terrain Model & 15+ standard DTM parameters at 30m now available as #OpenData 🌍: github.com/openlandmap/.... Based on 30B training pnts (ICESat-2 and GEDI) and Copernicus DEM, ALOS World3D, and object height models. @openearthmonitor.bsky.social
Preprint 📝: doi.org/10.21203/rs....
GitHub - openlandmap/GEDTM30: Global Ensemble Digital Terrain modeling and parametrization at 30~m resolution (GEDTM30)
Global Ensemble Digital Terrain modeling and parametrization at 30~m resolution (GEDTM30) - openlandmap/GEDTM30
github.com
March 25, 2025 at 9:25 AM
The v1 of the 30 m resolution global soil carbon density, SOC content, pH, texture fractions, bulk density and soil types (USDA subgroups) now out; soil carbon and soil pH are mapped as dynamic soil variables for 5yr intervals. Preprint: doi.org/10.5194/essd...
Data: github.com/openlandmap/...
OpenLandMap-soildb: global soil information at 30 m spatial resolution for 2000–2022+ based on spatiotemporal Machine Learning and harmonized legacy soil samples and observations
Abstract. There is increasing interest in global dynamic soil information with changes in soil properties mapped over time and at high spatial resolution. Thanks to long-term, multi-temporal, and fine...
doi.org
June 24, 2025 at 8:30 PM
Our global soil predictions at 30 m for 5 year periods (2000-2022+) are now available for viewing from world.soils.app; paper at: doi.org/10.5194/essd.... Download GeoTIFFs with 5-year predictions of soil carbon content, soil carbon density (kg/m3), soil pH, texture fractions, BD and USDA subgroups.
Openlandmap-soilDB, global 30 meter soil datacube
Explore the Openlandmap SoilDB, global 30 meter soil datacube with google earth engine based visualization.
world.soils.app
February 10, 2026 at 12:39 PM
We are doing a 1hr webinar on 30-m resolution global soil mapping and the new #Open #soil data kindly hosted by @geoldn.bsky.social. To register: www.eventbrite.com/e/openlandma...
📅 24 September 2025
🕐 13:00 – 14:00 (CEST)
💬 Seminar language: English
GeoLDN webinars: geo-ldn.org/events/geo-l...
OpenLandMap-soildb: global dynamic soil data at 30 m resolution
Discover detailed global soil data at a high resolution of 30 meters on OpenLandMap-soildb - all available online!
www.eventbrite.com
September 10, 2025 at 5:15 PM
Missed the @geoldn.bsky.social webinar on New Global Soil Datasets?
🎥 The recording is now available!

Discover the World Soils App, an #Open soil data viewer to explore dynamic & static soil properties 🌍 world.soils.app

Demo by @tomhengl.bsky.social ▶️ youtu.be/443HBf1GIGI?...
GeoLDN webinar: "OpenLandMap-soildb: global dynamic soil data at 30 m resolution"
YouTube video by OpenGeoHub Foundation Official Channel
youtu.be
October 8, 2025 at 9:51 AM
#GEDTM30 provides ensemble Digital Terrain model and some 15+ #geomorphometry variables (at 6 nested resolutions 30, 60, 120, 240, 480 and 960 m resolutions). Read more about this dataset here: doi.org/10.7717/peer...
Data access: github.com/openlandmap/...
@openearthmonitor.bsky.social
GEDTM30: global ensemble digital terrain model at 30 m and derived multiscale terrain variables
Production and validation of an open global ensemble digital terrain model (GEDTM30) and derived terrain variables at 1 arc-s spacing grid ( $\sim$∼ 30 m spatial resolution) is described. Copernicus D...
doi.org
July 24, 2025 at 10:16 AM
Predictions of peat depth and organic soils (Histosols) distribution at 30m resolution using multisource data. Access the data from doi.org/10.5281/zeno.... Generation of ensemble estimate of the peatland extent from multisource data: codeberg.org/openlandmap/... / data at doi.org/10.5281/zeno...
Peatlands_extent
Ensemble derivation of a global extent map for peatlands using multi-source data.
codeberg.org
May 25, 2026 at 9:49 AM
References

OpenLandMap Ensemble Digital Terrain Model (GEDTM30) via OpenLandMap stac.openlandmap.org/gedtm-30m/co...

Dataset: Actueel Hoogtebestand Nederland (AHN) via PDOK www.pdok.nl/introductie/...
stac.openlandmap.org
November 5, 2025 at 9:03 AM
GEDTM30 is a 1 arcsecond (~30 m) global Digital Terrain Model (DTM) built using a machine learning-based data fusion approach #dtm

github.com/openlandmap/...
May 21, 2025 at 8:01 AM
Video-recordings are at: youtu.be/443HBf1GIGI?...
GeoLDN webinar: "OpenLandMap-soildb: global dynamic soil data at 30 m resolution"
YouTube video by OpenGeoHub Foundation Official Channel
youtu.be
September 24, 2025 at 5:06 PM
GEDTM30 és un Model Digital de Terreny (MDT) global d'1 segon d'arc (~30 m) construït mitjançant un enfocament de fusió de dades basat en l'aprenentatge automàtic
https://github.com/openlandmap/GEDTM30
May 21, 2025 at 4:33 AM
How to add reclassified layer to another layer in Google Earth Engine
Ok so let's just jump right to the script var indon = ee.FeatureCollection('users/sdwijati/IDN_adm2') var Sesar = ee.FeatureCollection('users/sdwijati/Sulawesi_sesar') var nama_prov = ['Sulawesi Tengah', 'Sulawesi Utara', 'Sulawesi Tenggara', 'Sulawesi Barat', 'Gorontalo', 'Sulawesi Selatan'] var prov = indon.filter(ee.Filter.inList('NAME_1', nama_prov)); var s = ee.Image("OpenLandMap/SOL/SOL_SAND-WFRACTION_USDA-3A1A1A_M/v02") var savg = s.reduce(ee.Reducer.mean()); //Mean soil sand content var smap = savg.divide(20).ceil(); var resmap = smap.remap([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20], [0,0,0,0,0,0,0,0,0,45,55,60,65,70,75,80,85,90,95,100]); //Reclassified mean sand content Map.addLayer(savg.clip(prov), null, 'Soil sand content', false) var gtsavg = savg.updateMask(savg.gte(45)) //sand content greater than 45% var sandvis= {min: 0, max: 100, palette: ['fbff00','000000']}; var n = ee.Image("OpenLandMap/SOL/SOL_WATERCONTENT-33KPA_USDA-4B1C_M/v01") var navg = n.reduce(ee.Reducer.mean()) //soil water content Map.addLayer(navg.clip(prov), null, 'Soil water content', false) var xx = resmap.add(navg) //Soil water content percentage + Reclassified soil sand content percentage Map.addLayer(xx.clip(prov), null, 'Sand + Water Content', false) var sesar = Sesar var bufferBy = function(size) { return function(feature) { return feature.buffer(size); }; }; var intervals = '' + '' + '' + '' + '' + '' + '' + ''; var sarbuff = sesar.map(bufferBy(25000*4)) Map.addLayer(xx.sldStyle(intervals).clip(prov), {}, 'Susceptibility Categorization'); Map.addLayer(gtsavg.clip(prov), sandvis, 'Soil with sand content >45%') Map.centerObject(prov, 7) So, if you run the script it will show you two layers of active map. 'Soil with sand content >45%' and 'Susceptibility Categorization'. Based on var xx = resmap.add(navg), when I clicked the Google Earth Engine's inspector in the darker area (area with soil sand content >45%), I expected the Soil sand content percentage to be added to Soil water content percentage, which the total percentage will be shown in Sand + Water Content, and thus the total percentage then will be matched to the right color, accordingly, based on the colors on these lines: '' + '' + '' + '' + Unfortunately, that didn't happen. The Sand + Water Content will be the same percentage with Soil water content, despite the Soil sand content percentage is above 45%. So, what did I do wrong? And, any idea to fix it?
gis.stackexchange.com
May 14, 2026 at 4:14 PM
How to add reclassified layer to another layer in Google Earth Engine
Ok so let's just jump right to the script var indon = ee.FeatureCollection('users/sdwijati/IDN_adm2') var Sesar = ee.FeatureCollection('users/sdwijati/Sulawesi_sesar') var nama_prov = ['Sulawesi Tengah', 'Sulawesi Utara', 'Sulawesi Tenggara', 'Sulawesi Barat', 'Gorontalo', 'Sulawesi Selatan'] var prov = indon.filter(ee.Filter.inList('NAME_1', nama_prov)); var s = ee.Image("OpenLandMap/SOL/SOL_SAND-WFRACTION_USDA-3A1A1A_M/v02") var savg = s.reduce(ee.Reducer.mean()); //Mean soil sand content var smap = savg.divide(20).ceil(); var resmap = smap.remap([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20], [0,0,0,0,0,0,0,0,0,45,55,60,65,70,75,80,85,90,95,100]); //Reclassified mean sand content Map.addLayer(savg.clip(prov), null, 'Soil sand content', false) var gtsavg = savg.updateMask(savg.gte(45)) //sand content greater than 45% var sandvis= {min: 0, max: 100, palette: ['fbff00','000000']}; var n = ee.Image("OpenLandMap/SOL/SOL_WATERCONTENT-33KPA_USDA-4B1C_M/v01") var navg = n.reduce(ee.Reducer.mean()) //soil water content Map.addLayer(navg.clip(prov), null, 'Soil water content', false) var xx = resmap.add(navg) //Soil water content percentage + Reclassified soil sand content percentage Map.addLayer(xx.clip(prov), null, 'Sand + Water Content', false) var sesar = Sesar var bufferBy = function(size) { return function(feature) { return feature.buffer(size); }; }; var intervals = '' + '' + '' + '' + '' + '' + '' + ''; var sarbuff = sesar.map(bufferBy(25000*4)) Map.addLayer(xx.sldStyle(intervals).clip(prov), {}, 'Susceptibility Categorization'); Map.addLayer(gtsavg.clip(prov), sandvis, 'Soil with sand content >45%') Map.centerObject(prov, 7) So, if you run the script it will show you two layers of active map. 'Soil with sand content >45%' and 'Susceptibility Categorization'. Based on var xx = resmap.add(navg), when I clicked the Google Earth Engine's inspector in the darker area (area with soil sand content >45%), I expected the Soil sand content percentage to be added to Soil water content percentage, which the total percentage will be shown in Sand + Water Content, and thus the total percentage then will be matched to the right color, accordingly, based on the colors on these lines: '' + '' + '' + '' + Unfortunately, that didn't happen. The Sand + Water Content will be the same percentage with Soil water content, despite the Soil sand content percentage is above 45%. So, what did I do wrong? And, any idea to fix it?
gis.stackexchange.com
December 30, 2025 at 9:07 AM
How to add reclassified layer to another layer in Google Earth Engine
Ok so let's just jump right to the script var indon = ee.FeatureCollection('users/sdwijati/IDN_adm2') var Sesar = ee.FeatureCollection('users/sdwijati/Sulawesi_sesar') var nama_prov = ['Sulawesi Tengah', 'Sulawesi Utara', 'Sulawesi Tenggara', 'Sulawesi Barat', 'Gorontalo', 'Sulawesi Selatan'] var prov = indon.filter(ee.Filter.inList('NAME_1', nama_prov)); var s = ee.Image("OpenLandMap/SOL/SOL_SAND-WFRACTION_USDA-3A1A1A_M/v02") var savg = s.reduce(ee.Reducer.mean()); //Mean soil sand content var smap = savg.divide(20).ceil(); var resmap = smap.remap([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20], [0,0,0,0,0,0,0,0,0,45,55,60,65,70,75,80,85,90,95,100]); //Reclassified mean sand content Map.addLayer(savg.clip(prov), null, 'Soil sand content', false) var gtsavg = savg.updateMask(savg.gte(45)) //sand content greater than 45% var sandvis= {min: 0, max: 100, palette: ['fbff00','000000']}; var n = ee.Image("OpenLandMap/SOL/SOL_WATERCONTENT-33KPA_USDA-4B1C_M/v01") var navg = n.reduce(ee.Reducer.mean()) //soil water content Map.addLayer(navg.clip(prov), null, 'Soil water content', false) var xx = resmap.add(navg) //Soil water content percentage + Reclassified soil sand content percentage Map.addLayer(xx.clip(prov), null, 'Sand + Water Content', false) var sesar = Sesar var bufferBy = function(size) { return function(feature) { return feature.buffer(size); }; }; var intervals = '' + '' + '' + '' + '' + '' + '' + ''; var sarbuff = sesar.map(bufferBy(25000*4)) Map.addLayer(xx.sldStyle(intervals).clip(prov), {}, 'Susceptibility Categorization'); Map.addLayer(gtsavg.clip(prov), sandvis, 'Soil with sand content >45%') Map.centerObject(prov, 7) So, if you run the script it will show you two layers of active map. 'Soil with sand content >45%' and 'Susceptibility Categorization'. Based on var xx = resmap.add(navg), when I clicked the Google Earth Engine's inspector in the darker area (area with soil sand content >45%), I expected the Soil sand content percentage to be added to Soil water content percentage, which the total percentage will be shown in Sand + Water Content, and thus the total percentage then will be matched to the right color, accordingly, based on the colors on these lines: '' + '' + '' + '' + Unfortunately, that didn't happen. The Sand + Water Content will be the same percentage with Soil water content, despite the Soil sand content percentage is above 45%. So, what did I do wrong? And, any idea to fix it?
gis.stackexchange.com
August 30, 2025 at 8:08 PM
How to add reclassified layer to another layer in Google Earth Engine
Ok so let's just jump right to the script var indon = ee.FeatureCollection('users/sdwijati/IDN_adm2') var Sesar = ee.FeatureCollection('users/sdwijati/Sulawesi_sesar') var nama_prov = ['Sulawesi Tengah', 'Sulawesi Utara', 'Sulawesi Tenggara', 'Sulawesi Barat', 'Gorontalo', 'Sulawesi Selatan'] var prov = indon.filter(ee.Filter.inList('NAME_1', nama_prov)); var s = ee.Image("OpenLandMap/SOL/SOL_SAND-WFRACTION_USDA-3A1A1A_M/v02") var savg = s.reduce(ee.Reducer.mean()); //Mean soil sand content var smap = savg.divide(20).ceil(); var resmap = smap.remap([1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20], [0,0,0,0,0,0,0,0,0,45,55,60,65,70,75,80,85,90,95,100]); //Reclassified mean sand content Map.addLayer(savg.clip(prov), null, 'Soil sand content', false) var gtsavg = savg.updateMask(savg.gte(45)) //sand content greater than 45% var sandvis= {min: 0, max: 100, palette: ['fbff00','000000']}; var n = ee.Image("OpenLandMap/SOL/SOL_WATERCONTENT-33KPA_USDA-4B1C_M/v01") var navg = n.reduce(ee.Reducer.mean()) //soil water content Map.addLayer(navg.clip(prov), null, 'Soil water content', false) var xx = resmap.add(navg) //Soil water content percentage + Reclassified soil sand content percentage Map.addLayer(xx.clip(prov), null, 'Sand + Water Content', false) var sesar = Sesar var bufferBy = function(size) { return function(feature) { return feature.buffer(size); }; }; var intervals = '' + '' + '' + '' + '' + '' + '' + ''; var sarbuff = sesar.map(bufferBy(25000*4)) Map.addLayer(xx.sldStyle(intervals).clip(prov), {}, 'Susceptibility Categorization'); Map.addLayer(gtsavg.clip(prov), sandvis, 'Soil with sand content >45%') Map.centerObject(prov, 7) So, if you run the script it will show you two layers of active map. 'Soil with sand content >45%' and 'Susceptibility Categorization'. Based on var xx = resmap.add(navg), when I clicked the Google Earth Engine's inspector in the darker area (area with soil sand content >45%), I expected the Soil sand content percentage to be added to Soil water content percentage, which the total percentage will be shown in Sand + Water Content, and thus the total percentage then will be matched to the right color, accordingly, based on the colors on these lines: '' + '' + '' + '' + Unfortunately, that didn't happen. The Sand + Water Content will be the same percentage with Soil water content, despite the Soil sand content percentage is above 45%. So, what did I do wrong? And, any idea to fix it?
gis.stackexchange.com
April 21, 2025 at 2:08 AM