ForHosting KIT · Developer Utilities

Growing degree days calculator

Growing degree days turn a day’s minimum and maximum temperatures into a simple estimate of heat available for crop or insect development.

● BetaFree · in your browser
Use it from WebAPIEmailTelegramApp soon

Enter the daily low, daily high, and the base temperature appropriate to the organism, all on the same temperature scale. The calculator averages the low and high, subtracts the base, and reports zero when the result would be negative. It is a transparent single-day calculation that can be repeated or summed across a season.

Choose temperatures that belong to the same day and scale

Start with the observed daily minimum and maximum air temperatures for the location and calendar day you want to evaluate. Both readings must use the same scale, and the crop base must use that scale too. A base of 10 degrees Celsius cannot be mixed directly with weather observations in Fahrenheit. Select Celsius or Fahrenheit to make the result’s unit explicit; the calculation itself does not convert values. The maximum must be at least as large as the minimum. If those values are reversed, the calculator returns an error instead of silently producing a misleading result. Use a base temperature recommended for the particular crop, pest, disease model, or management guide you are following. Base temperatures are biological assumptions, not universal climate constants, so results for two species can differ even when their weather inputs are identical. This calculator handles one daily pair at a time, making each contribution easy to inspect before it is added to a longer seasonal total.

Understand the averaging method and zero floor

The averaging method first computes the simple mean of the daily minimum and maximum: average temperature equals minimum plus maximum, divided by two. It then subtracts the crop base temperature. If the difference is positive, that difference is the day’s growing degree day contribution. If the difference is negative, the contribution is set to zero because this model does not treat a cool day as reversing accumulated development. For example, a minimum of 50 degrees Fahrenheit and maximum of 86 degrees Fahrenheit have an average of 68. With a 50-degree Fahrenheit base, the result is 18 Fahrenheit degree-days. The same arithmetic works in Celsius, but degree-days expressed on the two scales are not numerically interchangeable. This is the basic averaging method only. It does not cap unusually high temperatures, replace lows below the base, integrate an hourly temperature curve, or apply single-sine or double-sine approximations. Those methods can produce different values under extreme daily conditions.

Use daily results consistently in an accumulation

A single daily value becomes useful when it is calculated consistently across a sequence of dates and summed from a defined biological or calendar starting point. Keep the weather source, temperature scale, base temperature, and calculation method unchanged throughout that accumulation. Record those choices with the total, because a number without its base and method cannot be compared reliably with a scouting threshold, planting guide, or research table. Missing observations should be handled according to the protocol behind your model rather than treated automatically as zero; zero means the day was validly calculated but did not exceed the base. Also remember that growing degree days estimate temperature-driven development, not plant health or final yield. Water availability, photoperiod, nutrition, frost injury, cultivar, and local microclimate can all change real development. Use the result as one input to field observation and established recommendations. When automating the calculation, each API request is priced at $0.002, and the deterministic output makes daily records straightforward to audit and reproduce.

Track crop development

Calculate each day’s heat contribution with the crop’s chosen base before adding it to a seasonal accumulation.

Time field scouting

Compare a consistently accumulated total with locally validated development windows for an insect or disease organism.

Audit weather calculations

Reproduce a daily value from its minimum, maximum, base, scale, and stated averaging method.

What formula does this calculator use?

It calculates (minimum temperature + maximum temperature) / 2 − base temperature, then replaces any negative result with zero.

What happens when the daily average is below the base?

The growing degree day result is zero. A cool day does not subtract from heat accumulated on earlier days.

Can I mix Celsius and Fahrenheit inputs?

No. The minimum, maximum, and base must all use the selected temperature scale.

Does this method apply an upper temperature cutoff?

No. It uses the entered minimum and maximum directly and applies only the crop base and the zero floor.

Why does the calculator reject a maximum below the minimum?

Those values are inconsistent for the same daily observation. Rejecting them prevents a plausible-looking result from invalid input.

How much does an API calculation cost?

Each request costs $0.002. The browser calculator can run the same deterministic arithmetic locally.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/earth/growing-degree-days

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/earth/growing-degree-days \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"minimum_temperature":50,"maximum_temperature":86,"base_temperature":50,"temperature_unit":"fahrenheit"}'
{
  "minimum_temperature": 50,
  "maximum_temperature": 86,
  "base_temperature": 50,
  "temperature_unit": "fahrenheit"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "earth.growing_degree_days",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Read the full KIT documentation →