Calculate Schengen days
calculate_schengen_daysRead-onlyIdempotent
Use this when the user needs a schengen calculator, schengen days left, schengen overstay dates or a 90/180 rule calculator for past and planned short stays. Returns days used and left on the check date, stay compliance, overstay dates and daily CSV. Accepts ISO or English US text dates, up to 60 stays over 1,100 days, years 1900–2100. Open stays end at the check date; touching stays merge. Does not model bilateral agreements, residence permits, long-stay visas or visa-sticker limits; calculation aid, not legal advice.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| stays | Yes | Up to 60 short stays spanning at most 1,100 days. Example: [{"entry_date":"2026-03-05","exit_date":"2026-03-20"}]. Use [] for none. Exclude residence-permit and type D visa days. | |
| check_date | Yes | Window ends on this day, inclusive. Example: 2026-03-20 or March 20, 2026. Required for an ongoing stay. |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| note | Yes | ||
| notes | Yes | ||
| days_left | Yes | ||
| days_used | Yes | ||
| downloads | Yes | ||
| check_date | Yes | ||
| window_end | Yes | ||
| stay_results | Yes | ||
| window_start | Yes | ||
| overstay_ranges | Yes | ||
| next_legal_entry | Yes | ||
| stay_result_count | Yes | ||
| overstay_day_count | Yes | ||
| first_overstay_date | Yes | ||
| next_entry_max_days | Yes |