Accurately calculate your allowed Schengen Area stay with this free, easy-to-use 90/180 day rule travel calculator. Ensure visa compliance for your next trip.
AI Generation Prompt
Schengen Visa 90/180 Day Rule Travel Calculator
Overview
A high-precision, client-side utility designed to help travelers track and manage their days spent in the Schengen Area. This tool uses a dynamic, sliding-window algorithm to calculate past, present, and future stay compliance based on the official 90/180 day rule.
Technical Constraints & Requirements
- Strictly Single-File: The entire application must reside within one HTML file. No build steps, no external frameworks, no React/Vue/Angular.
- No Persistent Storage: Due to iframe sandboxing, do NOT use
localStorage,sessionStorage, or cookies. Maintain state exclusively in JavaScript memory. - No Popups: Do not use
alert()orconfirm(). Implement custom UI modals for warnings and notifications. - Light Mode Only: Force a clean, professional aesthetic. No dark mode toggle. Use whites, soft grays, and a high-contrast accent color (e.g., a professional navy blue or emerald green).
- Responsive Design: Must work seamlessly on mobile, tablet, and desktop.
Feature Set
- Dynamic Trip Manager:
- Add/Edit/Delete trips with entry and exit date pickers.
- Visual list of trips organized chronologically.
- Compliance Dashboard:
- Live indicator showing total days spent in the last 180-day window.
- Progress bar visually representing the 90-day limit.
- 'Warning' state if the user exceeds or approaches the limit.
- Planning Mode:
- Ability to add 'planned' trips to see if they will violate the rule before booking.
- Data Privacy:
- Zero server-side interaction. All calculations happen in the browser.
UI Layout
- Header: Simple, clean typography with the app title and a brief 'How it works' toggle.
- Main Content Area:
- Left/Top Column: Input form for Entry Date and Exit Date.
- Right/Bottom Column: The 'Dashboard' which renders the calculated timeline and the status (e.g., 'Compliant', 'Limit Reached', 'Overstay Warning').
- List Section: A responsive table/list view showing all added trips, with delete buttons (trash icon) for each entry.
Color Palette
- Background:
#FFFFFF(White) - Surface:
#F8FAFC(Very light gray) - Primary Accent:
#2563EB(Professional Blue) - Success/Compliant:
#059669(Emerald) - Warning:
#D97706(Amber) - Danger/Overstay:
#DC2626(Red) - Text:
#1E293B(Slate/Dark Gray)
Animations & Micro-interactions
- Entry: Smooth fade-in for trip list items when added.
- Transitions: Use
transition: all 0.3s ease;on buttons and result cards. - Feedback: Subtle scale up/down animation on result status changes to draw the user's attention to the compliance status.
Implementation Notes for Developer
- Ensure the date math correctly handles leap years and cross-month transitions.
- Use a library like
date-fnsvia CDN for reliable date manipulation if desired, or pure Vanilla JS Date objects. - Keep the UI 'SaaS-like': Use high-quality box-shadows, rounded corners (
border-radius: 8px), and generous whitespace (padding/margins).
Spread the word
Files being used
Frequently Asked Questions
Everything you need to know about using this application.
How does the Schengen 90/180 day rule actually work?
The Schengen 90/180 rule is a 'sliding window' calculation. This means that at any given moment, when you look at the 180-day period immediately preceding your current date (or any date you are checking), you must not have spent more than 90 days in the Schengen Area in total. It is not based on a calendar year, but rather a rolling period that recalculates every single day. Because the window slides forward daily, days spent in the Schengen area eventually 'fall off' the 180-day window. This calculator helps you visualize this by tracking your past and future entry and exit dates to ensure you never accidentally overstay, which could lead to heavy fines or future travel bans.
Why should I use an automated calculator instead of counting manually?
Counting days manually is prone to human error, especially when your travel involves multiple short trips or trips that span across the boundaries of the 180-day window. Missing even a single day can result in serious legal complications with immigration authorities, as the calculation involves complex date arithmetic that is easy to misjudge. An automated calculator provides instant accuracy and peace of mind. By inputting your historical and planned travel dates, the tool processes the exact math behind the sliding window, offering a clear visual representation of your remaining allowance and any potential issues with your upcoming travel itinerary.
Is my travel data safe when using this tool?
Yes, this tool is designed with your privacy in mind. Because this is a single-file, client-side application, all calculations are performed locally within your own web browser. No data is sent to a remote server, stored in a database, or tracked via cookies. Furthermore, because the tool is built without the use of persistent storage like localStorage or IndexedDB, your data exists only in the volatile memory of your current browser session. Once you close the tab, all information you entered is completely wiped, ensuring zero data footprint.
What happens if the calculator shows that I am going to overstay?
If the tool indicates an overstay, you should adjust your travel itinerary immediately to comply with the 90-day limit. Overstaying your visa-free allowance in the Schengen Area is a serious violation that can result in administrative fines, immediate deportation, and an entry ban for the entire Schengen territory for several years. Use the 'Adjust Dates' feature to experiment with different exit dates or shorter trip durations until the calculator confirms your travel plan is compliant. Always prioritize your legal standing and ensure that your planned departure date leaves a buffer, as unexpected travel delays can inadvertently cause you to overstay.
Related Applications

Free EDI X12 Syntax Highlighter & Parser Tool
@Akhenaten

Free Online SQL Query Minifier & Code Compressor Tool
@Akhenaten

Free Hardy-Weinberg Equilibrium Allele Frequency Calculator
@Akhenaten

Free Scroll Progress Bar Code Generator - HTML/CSS/JS
@Akhenaten