Shortcut to filter a collection by a date range. The start and end may be Dates, numbers (interpreted as milliseconds since 1970-01-01T00:00:00Z), or strings (such as '1996-01-01T08:00'). Based on 'system:time_start'.

This is equivalent to this.filter(

Returns the filtered collection.

FeatureCollection.filterDate(start, end)Collection
this: collectionCollection

The Collection instance.


The start date (inclusive).

endDate|Number|String, optional

The end date (exclusive). Optional. If not specified, a 1-millisecond range starting at 'start' is created.


Code Editor (JavaScript)

// Constructed FeatureCollection representing a field site sampled at
// four different dates; date recorded as "system:time_start" property in units
// of milliseconds since Unix epoch.
var geom = ee.Geometry.Point([-119.56, 37.67]);
var fc = ee.FeatureCollection([
  ee.Feature(geom, {'prop': 10, 'system:time_start': ee.Date('2021-06-10')}),
  ee.Feature(geom, {'prop': 11, 'system:time_start': ee.Date('2021-06-20')}),
  ee.Feature(geom, {'prop': 19, 'system:time_start': ee.Date('2021-07-10')}),
  ee.Feature(geom, {'prop': 10, 'system:time_start': ee.Date('2021-07-20')})

// Filter the observations in July 2021.
print('Field site observations collection in July 2021',
      fc.filterDate('2021-07-01', '2021-08-01'));

// Alternative input formats.
print('ee.DateRange as an input',
      fc.filterDate(ee.DateRange('2021-07-01', '2021-08-01')));

print('Numbers (milliseconds since Unix epoch) as an input',
      fc.filterDate(1625875200000, 1626739200001));

print('ee.Date objects as an input',
      fc.filterDate(ee.Date('2021-07-01'), ee.Date('2021-08-01')));