Expat using laptop to file online 90-day report with Thai immigration website visible on screen
Visas / Documents

đź“…90-Day Report

Mandatory address notification for long-term visa holders

01 / Immigration Compliance

The 90-Day Report
Decoded

Published November 16, 2025

Set a reminder for 80 days from now. Write it in your calendar. Tell your phone to nag you. Because somewhere around day 89, you'll realize you need to file a 90-day report with Thai Immigration, and the window for doing it easily is rapidly closing. Miss it entirely, and you're looking at a 2,000 baht fine and a recorded violation that immigration officers will see during future visa extensions or re-entry permit applications.

The 90-day report isn't a visa extension. It's not a fee. It's simply a notification—you telling Thai Immigration that yes, you're still here, and yes, you're still living at the same address. It applies to most people on long-term visas, whether you're teaching English on an education visa, running a company on a business visa, or retired on a retirement visa. Stay in Thailand continuously for 90 days, and you must check in.

Exception: LTR Visa Holders

If you hold an LTR (Long-Term Resident) visa, you report annually instead of every 90 days. This is a one-year notification requirement, not the standard 90-day report. Some official and diplomatic categories also have separate reporting rules.

What makes the 90-day report particularly confusing for newcomers is that the count resets in ways that aren't always obvious. Leave Thailand for the weekend to visit Singapore? The count resets from your re-entry date. Your first application for an extension of stay also serves as a 90-day notification and typically sets a new 90-day due date from that extension date. The system tracks your physical presence in the country, and every 90 days of continuous residence triggers the reporting requirement. It's straightforward in theory, maddening in practice when you're trying to remember whether that border run three months ago counts as leaving or if you accidentally let your deadline slip past while traveling in northern Thailand.

"The 90-day report isn't about immigration controlling where you live. It's a holdover from older administrative systems, now largely automated but still mandatory—a bureaucratic check-in that matters more for your compliance record than for practical tracking."

Understanding the Count

The 90-day count begins ticking from the moment you enter Thailand or from the date of your last 90-day report. If you're arriving fresh from abroad, count 90 days forward from your entry stamp. Already filed once? Count 90 days from that filing date. The system is literal: exactly 90 days, not "around three months" or "sometime in late March."

Here's where people trip up: you can file 15 days before your deadline or up to 7 days after. That's your window—22 days total for in-person or mail filing. Most long-term expats I know set reminders for day 80, giving themselves a comfortable buffer. File too early (before day 75), and the system rejects it. File after the grace period (after day 97), and you're paying the 2,000 baht fine regardless of your excuse. Immigration doesn't care that you were trekking in the jungle without internet or that you genuinely forgot. The deadline is the deadline.

The beautiful exception: international travel. Every time you leave Thailand and return, the 90-day count completely resets from your re-entry date. This means frequent travelers—digital nomads doing visa runs, business people shuttling to Singapore, anyone taking regular trips abroad—may never need to file a 90-day report because they're constantly resetting the clock. I know expats who've lived in Thailand for years without filing once because they travel internationally every two months. But track your travel carefully; assume you're staying put, and you might discover you're overdue.

Screenshot of Thai Immigration online 90-day report system showing the filing form and submission interface

Filing Online: The Modern Method

Thai Immigration has dragged its systems into the 21st century with online 90-day reporting, and when it works, it's genuinely convenient. You can file from your couch in Chiang Mai, a beach in Koh Samui, or a coworking space in Bangkok. The catch: most provincial offices still expect you to file in person at least once before the online system accepts your submissions, but a few have started letting first timers file online immediately. Treat that in-person visit as the default expectation and a prerequisite after every passport change or new entry stamp—if the portal rejects you, plan a quick office visit to re-establish your record before trying online again.

Online Filing Window

Important: The online portal only accepts submissions from day 75 to day 83 (15 to 7 days before your due date). If you're within the last 6 days or already late, you must file in person, by mail, or through an authorized person.

Portal: tm47.immigration.go.th

Approval: Immigration guidance says to allow up to 7 working days for approval even though many submissions clear in 1-3 days. If you're still waiting on day 7, file in person to avoid slipping past your deadline.

The online process itself is straightforward. Visit the official portal, enter your passport details and current address (which must match your TM30 notification—more on that bureaucratic requirement elsewhere), and submit. If everything matches their records perfectly, you'll receive approval via email. The system emails you a confirmation receipt that you should save digitally and print a copy to keep with your passport.

When the online system fails—and it does, with some regularity—the rejection usually comes down to mismatched addresses. Your address must match your TM30 exactly, down to the building number formatting and district spelling. The most common mistake is filing before your TM30 is updated after international travel, which creates an automatic mismatch that kills your submission. Make sure your reported address matches the current TM30 on file—this is a common cause of online rejections. If you've moved or your landlord hasn't filed a new TM30, update that first, then file the 90-day report.

The Online Filing Process

Website: Navigate to tm47.immigration.go.th and create or log into your account. The site works best on Chrome and can be temperamental on mobile browsers.

Required information: Passport number, nationality, current visa type, and your exact registered address from your TM30. Enter all details carefully to match immigration records.

Approval timeline: Officially, processing can take up to 7 working days even if most approvals arrive within 1-3 days. Monitor your email (including spam). No response by the end of day 7? Assume the submission failed and file in person so you stay inside the reporting window.

Filing in Person: The Traditional Route

Despite online options, many expats still file their 90-day reports in person—by necessity for their first filing, by choice because they don't trust the online system, or because online filing failed and they need their receipt immediately. The in-person process is tedious but straightforward: arrive at your local immigration office early (lines form quickly), take a queue number, fill out the TM47 form if you didn't download it beforehand, and wait for your number to be called.

What you need: your actual passport (photocopies won't cut it for in-person filing), copies of your passport bio page, current visa page, and most recent entry stamp, plus your TM30 receipt. Some offices want your previous 90-day report receipt if this isn't your first filing. Others don't care. Bring everything—including the Thailand Digital Arrival Card (TDAC) confirmation that replaced the TM6 arrival card on May 1, 2025—because many checklists still mention “TM6” even though TDAC is now the official record. The process itself takes 5-15 minutes once you reach the counter, but you might wait 30 minutes to two hours depending on the day, time, and office. Bangkok's Chaeng Wattana office on a Monday morning? Pack snacks. A provincial immigration office on Thursday afternoon? You'll be in and out.

The advantage of in-person filing is certainty. You walk out with a stamped receipt in hand, proof that you're compliant for another 90 days. No wondering if your online submission was accepted, no email approval waiting game. For your first filing, when you're establishing your record in the system, in-person is often less stressful than battling the online system's quirks.

Can't visit in person?

Registered mail: Send your TM47 packet via registered mail/EMS to your local immigration office no later than 15 days before the due date (the postmark is what counts). Include the signed TM47, passport/visa/entry-stamp copies, your TM30 receipt, and a stamped self-addressed envelope. Expect 1-2 weeks for the receipt to come back; if the office receives it late, you'll still need to appear and pay the fine.

Authorized representative: A spouse, colleague, or visa agent can file for you within the same day 75-97 window with your signed TM47, passport copy, and a short authorization letter plus their Thai ID. They can also pay the 2,000 THB late fine on your behalf if you're already overdue, but immigration hands the receipt to them—coordinate pickup so it ends up in your passport.

What Happens When You Miss the Deadline

→ The fine is immediate and non-negotiable: 2,000 THB if you self-report; 4,000-5,000 THB if immigration catches or arrests you. Section 76 legally allows up to 5,000 THB plus 200 THB per day until you comply, so offices post slightly different fine charts—bring enough cash to match their signage.

→ Your immigration record shows the violation: Late filings are recorded and may be considered in future dealings with Immigration, including visa extensions and re-entry permit applications

→ Multiple missed reports compound the problem: Repeated non-compliance can affect visa renewal decisions and trigger closer scrutiny

→ You can't fix it remotely: Late filings require in-person visits to pay the fine and file your report, even if you normally file online

The Practical Reality for Frequent Travelers

If you leave Thailand every couple of months—for business, tourism, visa runs, or just because you like traveling—you might never need to worry about 90-day reports. The reset-upon-exit rule means your count never reaches 90 days if you're regularly crossing borders. A weekend border bounce to Cambodia? Count resets. A visa run to Laos? Count resets. A two-week vacation to Japan? Count resets.

This creates an interesting dynamic where highly mobile expats essentially opt out of the 90-day reporting requirement simply through their lifestyle. Digital nomads based in Bangkok but traveling regionally every month rarely file 90-day reports because they're constantly resetting the timer. Meanwhile, someone on the exact same visa type who stays put in Chiang Mai for six months straight will file twice during that period.

The trap is forgetting to track it. You've been traveling regularly, then suddenly you have three months of staying put, and you've missed your deadline without realizing it. The system doesn't send reminders. There's no notification. You're responsible for tracking your own count, and immigration assumes you know the rules. Calendar apps, spreadsheet trackers, or even a simple note in your phone—use whatever system works, but track it actively.

Interior of Thai immigration office with expats waiting in queue to file 90-day reports

Why This System Exists

The 90-day report feels anachronistic because it essentially is. Before modern databases and digital tracking, governments needed physical check-ins to monitor foreign residents. You'd report your location, immigration would update their files, and everyone had a paper trail showing where foreigners lived and how long they stayed. In 2025, with entry-exit data digitized and visa information computerized, the 90-day report serves no practical purpose that immigration doesn't already have through other systems.

But bureaucratic systems persist long after their original justification disappears. The 90-day report remains because it's codified in Thai immigration law, because the infrastructure exists to process it, and because changing established procedures requires legislative action that no one prioritizes. For expats, it's simply a compliance requirement—not a security measure, not a meaningful tracking tool, just a box to check every 90 days to avoid fines and maintain good standing with immigration.

Understanding this helps contextualize the requirement. It's not personal scrutiny of your activities. Immigration isn't investigating where you've been or what you've done in the past 90 days. They're noting that you reported, ticking a box in their system, and filing your receipt. The actual information collected—your name, address, and confirmation that you're still here—tells them nothing they don't already know from your visa records and entry-exit stamps. But you still must file it, because the law says you must.

Common Questions Answered

Does changing addresses affect my 90-day count?

No. The count continues from the same starting point regardless of where you live within Thailand. However, you must update your TM30 when you move, and your 90-day report must show your current address.

Can I file early if I'll be traveling during my deadline?

Yes. File within the 15-day early window (days 75-90) before traveling for in-person or mail submissions so you're compliant before you leave. Remember the online portal closes after day 83, so if you're abroad during the final week you'll need to file in person (or authorize someone) ahead of time.

What if I file late but before day 97?

You're within the lawful 7-day grace period (days 91-97). Fines apply after day 97. However, practice may vary by office, so don't rely on last-minute filing.

Making It Routine

The expats who never miss their 90-day reports aren't more organized or more diligent than anyone else. They've simply made it routine. Set calendar reminders for day 80. Keep your document scans in a dedicated folder. File early in the window rather than procrastinating until the deadline. If you travel frequently, maintain a simple spreadsheet tracking your entry dates so you know when the count resets.

The online system, for all its occasional glitches, makes compliance genuinely convenient once you're set up. The first in-person filing establishes your record. After that, it's 10 minutes every 90 days logging in, uploading the same document types you uploaded last time, and waiting for email confirmation. Keep your approval receipts organized—digital copies in cloud storage, physical copies with your passport. You'll need them to prove compliance during visa extensions and other immigration interactions.

The 90-day report is one of those Thailand peculiarities that frustrates newcomers and becomes second nature to long-term residents. It's not difficult, it's not expensive (unless you forget), and it's not negotiable. It's simply part of the administrative landscape of living here long-term, like filing taxes back home or renewing your driver's license—a bureaucratic requirement you comply with not because it makes sense, but because not complying costs you time, money, and immigration goodwill you'd rather not lose. For more guidance on navigating Thailand's immigration requirements, explore our visa FAQ section or learn about related requirements like the TM30 notification system.

Quick Reference

DO

  • Set calendar reminder for day 80
  • File within the 22-day window
  • Keep all confirmation receipts
  • Update TM30 before filing
  • File in person at least once
  • Track international travel dates

DON'T

  • Wait until the last day to file
  • Assume your address matches TM30
  • Upload blurry document scans
  • Forget to track the reset when traveling
  • Skip filing if you feel confused
  • Ignore email confirmations

Critical Deadline

File between day 75 and day 97 from your entry or last report date; the online portal shuts on day 83, so days 84-97 require in-person, mail, or an authorized representative.

Filing Timeline

Day 1
Entry date or last report date
Day 75
Earliest you can file (15 days early)
Day 90
Official deadline
Day 97
Last day of grace period (7 days late)
Day 98+
2,000 THB fine applies

Key Facts

Cost

Free (2,000 THB if you self-report late; 4,000-5,000+ THB if immigration catches you, with Section 76 allowing up to 5,000 THB + 200 THB/day)

Filing Window

22 days total (15 before, 7 after); online: days 75-83 only

Online Approval

Allow up to 7 working days officially (most approvals arrive in 1-3 days)

Reset Trigger

Any international exit/re-entry