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.

Short answer

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

RankSource typeHow we use it
1Primary law and treaty textStatutes, regulations, official gazettes, and treaty texts with protocols
2Official guidanceTax and immigration authority pages, manuals and forms
3International bodiesOECD, EU and similar official publications for shared concepts
4Third-party commentaryPointers to where to look. Never the only source for a rule
ExcludedCompetitor materialUsed 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