Methodology: how we research, model and count
Our source hierarchy, how rules become records, how the tools use them, how days are counted, and how we handle uncertainty.
We draft each rule from primary law or official guidance, store it as a versioned record with its source and check date, and use the same record on country pages, in tool results and in exports. Anything we cannot verify is shown as a gap, never filled in.
Source hierarchy
| Rank | Source type | How we use it |
|---|---|---|
| 1 | Primary law and treaty text | Statutes, regulations, official gazettes, and treaty texts with protocols |
| 2 | Official guidance | Tax and immigration authority pages, manuals and forms |
| 3 | International bodies | OECD, EU and similar official publications for shared concepts |
| 4 | Third-party commentary | Pointers to where to look. Never the only source for a rule |
| Excluded | Competitor material | Used for design research only, never as a tax rule source |
How a rule becomes a record
Each country has one record. Each residence rule in it has an ID such as ES-RES-01, a plain summary, the kind of test, the day figure and period where one is verified, the counting method where known, the official source, its effective period and the date we checked it. Country pages, the exposure check, the day ledger and exports all read the same record, so a change in one place changes them all.
The current rule set version is 2026-11-08.59a49c4d, built on November 8, 2026. Every tool export includes it.
How the exposure check uses records
- Day-count rules compare your reported days with the recorded figure and produce a question either way. Below the figure is never presented as a safe result.
- Ties rules produce a question when you report a home, family, work, registration, prior residence or a permit there, or when those are unknown.
- Citizenship rules apply when you report citizenship, and flag permanent residence status for countries whose rule may cover it.
- Two countries with possible residence ties add a treaty research question. We do not interpret treaties.
- A missing figure, an unknown counting method, an uncovered country or an unchecked year becomes a coverage gap.
The engine is tested against a fixed set of cases, including retained ties, work in each country, dual exposure, uncertain status, unsupported years and missing data. A test fails if any output contains reassuring conclusions such as tax-free, compliant, eligible or not resident.
How days are counted
The ledger counts calendar dates as you record them, without time-zone conversion. It shows two methods side by side, because countries differ.
- Any part of a day. Arrival and departure days both count. A travel day counts for two countries.
- At midnight. A day counts where you were at the end of it. A same-day trip counts zero.
It also shows the highest actual count in any 12-month period, for rules that use a rolling window. The date arithmetic is tested with leap days, year changes, same-day trips, duplicates, adjacent stays, overlaps and invalid dates.
Assumptions and exclusions
- Rules describe individuals, not companies or trusts, unless the page says otherwise.
- We record the main residence tests, not every special regime or exception.
- We do not list or interpret bilateral treaties, calculate tax, or source income.
- Rules were checked against guidance current on the date shown. Earlier years may differ.
How we handle uncertainty
If a number or date cannot be confirmed from an official source, it is left out and the gap is shown. If sources conflict, the rule is withdrawn from tool results until resolved. Unknown answers in the tools are treated as open, never as no.
- Countries covered
- 40 countries
- Sources
- 272 sources. Register
- Tax year
- 2026 checked
- Review
- Not professionally reviewed
Sources checked November 8, 2026