Your client’s ACA subsidy doesn’t stop the day she becomes eligible for Medicare. It stops being legal that day — but the Marketplace keeps sending the advance premium tax credit to her insurer every month until somebody tells it to stop, and “somebody” is usually supposed to be her, or you. Turn 65 while nobody catches it, and the bill shows up eight months later as a repayment demand on her tax return, right next to a Part B penalty that never goes away. That’s the transition this article is about: what actually happens when an ACA marketplace client ages into Medicare, why it’s so easy to miss, the exact CMS and IRS math behind what it costs, the full manual process to catch it every time, and where Ambrose’s Routines and aca-watchdog spoke can take the recurring check off your plate.
Key takeaways
- ACA subsidies are barred by law starting the month a client becomes eligible for premium-free Medicare Part A, but the Marketplace doesn't cancel the plan or the subsidy automatically (HealthCare.gov, Changing from Marketplace to Medicare).
- The Medicare Initial Enrollment Period is seven months: three months before the birthday month, the birthday month, and three months after (HealthCare.gov / Medicare.gov).
- Missing it brings a permanent Part B penalty of 10% of the premium per full 12-month period delayed — on the 2026 standard premium of $202.90, two years of delay adds $40.58 a month forever (Medicare.gov, Avoid Late Enrollment Penalties).
- Signing up for Part A late can backdate coverage up to six months, which retroactively zeroes out HSA eligibility for that window and triggers a 6% annual excise tax on any contribution made during it (IRS Publication 969).
- Ambrose's Routines can run a monthly age-out check combining the ghl spoke's live GoHighLevel data and the aca-watchdog spoke's book scan, with results posted straight to Slack (Ambrose docs, Routines / spoke-ghl / spoke-aca-watchdog).
What actually happens when an ACA client turns 65
Here’s the version of this that plays out in a normal book of business, not a hypothetical. A client has been on a subsidized ACA marketplace plan for three years. She’s paying $140 a month after a $610 advance premium tax credit covers the rest. Her 65th birthday is in April. Nothing about her Marketplace account changes on its own. No email fires from CMS. No automatic disenrollment happens. Her insurer keeps billing $140, the Marketplace keeps sending the $610 credit, and unless she — or you — go back into her Marketplace application and report a Medicare start date, that arrangement just continues, because HealthCare.gov’s own guidance is explicit that the system does not do this for her: it’s on the consumer to update the application when Medicare eligibility starts (HealthCare.gov, Changing from Marketplace to Medicare).
Meanwhile, a completely separate clock started running the January before her birthday: the seven-month Initial Enrollment Period for Medicare itself, three months before her birth month, her birth month, and three months after (HealthCare.gov / Medicare.gov, Changing from Marketplace to Medicare). Nothing connects that clock to her Marketplace account. A client can sail through her IEP with the ACA plan looking completely normal on her end — premium charged, claims paid, portal working — with no visible sign that anything has gone wrong, right up until she files taxes the following spring and Form 8962 reconciles the advance credits she was never supposed to get for the months she was Medicare-eligible.
This is a coordination gap, not a rule anyone broke on purpose
Nothing here is Marketplace fraud or a carrier mistake. The ACA marketplace and Medicare are two separate federal programs with two separate eligibility systems, and neither one is built to watch the other. The gap exists because nobody's software connects them — which is exactly the kind of manual check this article walks through, and exactly the kind of recurring, rules-based task a scheduled Ambrose Routine is built for.
Why this happens: two systems, two clocks, no shared trigger
The Marketplace eligibility system determines who qualifies for advance premium tax credits based on income, household size, and access to other coverage. Medicare eligibility is based on age (or disability, ESRD, or ALS) and work history. They are run by different parts of CMS, they don’t share a real-time eligibility feed with each other for this purpose, and the legal trigger that ends ACA subsidy eligibility — becoming entitled to premium-free Part A — is not the same event as actually enrolling in Medicare. A client can be entitled to Part A the month she turns 65 whether or not she’s done a single thing about it. Section 36B of the tax code, which governs the premium tax credit, bars it for any month a person is eligible for premium-free Part A, and HealthCare.gov states the practical result plainly: “You can’t get savings on your Marketplace plan premiums or out-of-pocket costs once you’re eligible for Medicare Part A” (HealthCare.gov, Changing from Marketplace to Medicare).
That means the subsidy becomes improper before most clients have done anything wrong — they just haven’t done the paperwork yet, and the two systems have no shared trigger that forces it. If a client is already collecting Social Security by 65, Medicare Part A and Part B enrollment happens automatically, which solves half the problem but creates the other half instantly: now she has both Medicare and a subsidized Marketplace plan running at the same time, and only one of them is supposed to exist. If she hasn’t filed for Social Security yet, nothing happens automatically at all — she has to actively enroll in Medicare during her IEP, and separately, actively go into her Marketplace application to end the ACA plan and its subsidy.

| Birth month | IEP opens | Birth month itself | IEP closes |
|---|---|---|---|
| January | October (prior year) | January | April |
| April | January | April | July |
| July | April | July | October |
| October | July | October | January (following year) |
Run that same three-months-before, three-months-after math for any birth month and you get the exact window for that client. The point of building this into a sorted list rather than checking it one client at a time is that a January birthday’s window opens in October of the prior year — three full months before the calendar even turns to the client’s birthday year. A monthly sweep is what catches that; an annual one, timed to the birthday itself, is already four months late for a third of your book.
What it actually costs when nobody catches it
This is where the two clocks turning independently gets expensive, in dollars that are traceable to primary sources rather than a hypothetical vendor benchmark.

Put those numbers together and you get a worked example — built entirely from the sourced figures above, not a reported real case, so treat it as illustrative math rather than a documented incident. A client misses her IEP entirely because nobody flagged it, keeps her ACA plan running, and doesn’t sort out Medicare until two years later. Three things happen at once. First, every month she was eligible for premium-free Part A and still received an advance premium tax credit is subject to repayment at tax time under Form 8962’s reconciliation, though how much of that is actually owed depends on income — IRS Form 8962 Instructions describe a repayment limitation that caps the amount for filers under 400% of the federal poverty line, with no such cap above it (IRS Instructions for Form 8962, 2025). Second, her Part B enrollment is now two full years late, adding a permanent 20% to the $202.90 base premium — $40.58 a month, for a new total of $243.50 every month for the rest of her life, per Medicare.gov’s own penalty math (Medicare.gov, Avoid Late Enrollment Penalties). Third, if she has an HSA and kept contributing during the six months her Part A got backdated once she finally signed up, every one of those contributions becomes an excess contribution, taxed annually at 6% until she corrects it under IRS Form 5329 (IRS Publication 969, for 2025 returns).
None of this is a penalty for doing something wrong. It's a penalty for two federal systems that don't talk to each other, and nobody noticed in time.
Mike MooreWhat delay actually adds to the Part B premium
Applying Medicare.gov's own 10%-per-year penalty formula to the 2026 standard premium — a worked calculation from the sourced rule, not a separately reported figure.
Source: Medicare.gov, Avoid Late Enrollment Penalties — 2026 standard Part B premium of $202.90, plus 10% per full 12-month period of delay, calculated for illustration.
The full manual method: catching every T65 client before the window closes
None of this requires software you don’t already have. It requires a habit built around one piece of data you already collect on every client: date of birth. Here’s the complete process.
Pull every ACA client's date of birth into one list
If your CRM or carrier portal has it as a field, export it. If it doesn't, this is worth building once: a spreadsheet with name, DOB, current plan, current subsidy amount, and household composition for every active ACA marketplace client.
Calculate each client's Initial Enrollment Period window
IEP start = three months before the birth month. IEP end = three months after. A client born in April has an IEP running January through July of her 65th year. Add both dates as columns next to her name.
Sort by IEP start date and flag anyone inside the next 90 days
Run this sort monthly, not annually. A client whose IEP starts in three months needs outreach now, not after her birthday has already passed — waiting until the birthday itself means you've already burned a third of her window.
Confirm whether she's already collecting Social Security
If yes, Part A and B enrollment is automatic — the task shifts to confirming she got the notice and understands what it means for her ACA plan. If no, she has to actively enroll, and you need to confirm she has a plan to do that inside her IEP.
Time the Marketplace cancellation to the Medicare start date, not before
HealthCare.gov allows reporting a Medicare start date on the Marketplace application up to three months in advance (HealthCare.gov, Changing from Marketplace to Medicare) — use that window so the ACA plan ends right as Medicare coverage begins, with no gap and no overlap.
Flag any HSA before Part A gets backdated
If she has an HSA and isn't collecting Social Security yet, tell her to stop contributing at least six months before her planned Medicare start date, so a retroactive Part A entitlement never lands on top of a contribution she already made (IRS Publication 969).
Document the date you flagged it and the date she acted
If this ever gets questioned by a client who says "nobody told me," a dated note in your CRM showing when the flag went out and what was said is the entire defense. Keep it in her file, not in a text thread that disappears.
This scales down to a solo agent fine
A solo agent doesn't need a shared spreadsheet reviewed by a team — a simple monthly calendar reminder to re-sort your own book by upcoming birthday works the same way. What breaks isn't the method, it's remembering to actually run it every single month once your book gets past a few hundred ACA clients.
Everything above works whether you ever join anything or not. Go run it by hand on your own book this month, or let Ambrose run the recurring check for you.
You find out when she calls, confused
- The first sign of a problem is a client asking why her tax preparer flagged her 1095-A
- Nobody checked her IEP window because nothing in the CRM surfaces it
- The Marketplace plan and subsidy ran for months past the legal cutoff
- An HSA contribution already happened before anyone flagged the retroactive Part A rule
Discovered after the factusually at tax time, months too late to fix
A monthly sweep flags her three months out
- Every ACA client's DOB is checked against today's date on a schedule
- Anyone entering their IEP window in the next 90 days gets flagged automatically
- Outreach happens with time to coordinate the Marketplace exit and Medicare enrollment
- The HSA contribution question gets asked six months before it would matter
Flagged 90 days outbefore the IEP window even opens, not after it closes
Edge cases that change the math
Three variations on this show up often enough to plan for in advance, rather than discovering them mid-conversation.
The household doesn’t all turn 65 on the same day. A married couple with a five-year age gap doesn’t transition together. When the older spouse ages off, the younger spouse and any dependents stay on the Marketplace plan — HealthCare.gov’s own guidance confirms that “others on your application will keep their Marketplace coverage,” but also that the Marketplace “re-checks the amount of savings anyone else on your application gets” once the update is filed (HealthCare.gov, Changing from Marketplace to Medicare). Household size for subsidy purposes doesn’t change just because one person left for Medicare, but the income used to calculate the credit is still the whole household’s income, so the remaining member’s subsidy can move in either direction. Don’t assume the spouse’s premium stays flat just because her own eligibility didn’t change — file the update and let the Marketplace recalculate before you promise a client anything about her new number.
A missed IEP doesn’t mean waiting until next January. If a client misses her full seven-month Initial Enrollment Period with no other creditable coverage, her next chance is the General Enrollment Period, which Medicare.gov states runs “between January 1-March 31 each year,” with coverage starting “the month after you sign up” (Medicare.gov, When Does Medicare Coverage Start). That’s a meaningfully shorter gap than Medicare’s enrollment rules used to require, but it’s still a gap — a client who misses her IEP in, say, June won’t have Medicare coverage again until sometime between February and April of the following year, all while her Marketplace subsidy exposure keeps accruing every month in between.
Disability-based Medicare eligibility starts the clock early. A client under 65 who’s received Social Security Disability Insurance for 24 months becomes Medicare-eligible on the same legal basis as turning 65 — the ACA subsidy bar applies the same way, and it’s easy to miss because nothing about the calendar says “65th birthday” to flag it. If a client mentions a disability determination or SSDI approval, that’s worth checking against Medicare eligibility immediately rather than waiting for an age-based trigger that isn’t coming.
This article covers age-based ACA-to-Medicare transitions only
Clients who are still actively working past 65 with employer group coverage follow a different set of Special Enrollment Period rules tied to when that employment or coverage ends, not a marketplace-specific timeline — our Medicare Special Election Periods guide covers those separately.
Where the manual version breaks down at scale
The seven-step process above works and it’s complete. It also depends entirely on someone remembering to re-run the sort every month, on every book. That’s manageable at fifty ACA clients. It quietly stops happening at five hundred, not because the method is wrong but because a monthly manual export-and-sort task is exactly the kind of recurring chore that gets skipped the week AEP prep eats the whole calendar — which is precisely the month it matters most, because a missed flag compounds every month it goes uncaught.
There’s a second problem underneath the first: that spreadsheet is a concentration of exactly the data you don’t want sitting in a general-purpose AI tool. Name, date of birth, current subsidy amount, and health coverage status in one file is PHI-adjacent the moment someone pastes a few rows into ChatGPT to “help draft the outreach message faster” during a busy week. It’s an understandable shortcut, and it’s also raw client data going to a destination that almost certainly isn’t covered by your agency’s BAA.
How Ambrose’s Routines, ghl spoke, and aca-watchdog build this into a monthly check
Ambrose OS, the platform included with a Tech Savvy membership, doesn’t have a single pre-built “T65 alert” button today, and it’s worth being precise about that instead of overselling a feature that doesn’t exist yet. What it does have, confirmed in the current docs, is three pieces that assemble into exactly this check.
Routines run a target — an agent or a team — on a cron schedule, with an output sink of Slack, email, a GHL note, or a log-only record (Ambrose docs, Routines). A monthly cron pointed at the first of the month is the same cadence the manual method above calls for, minus the part where someone has to remember to do it.
The ghl spoke has live, read access to the full GoHighLevel v2 surface: “Contacts, conversations, calls, pipelines, workflows, calendars, social, Voice AI, tasks, notes, custom fields” (Ambrose docs, spoke-ghl). If date of birth lives in a GHL custom field — which it does for most agencies running ACA books through GoHighLevel — a Routine’s prompt can pull every contact’s DOB and calculate who’s entering their IEP window, the same math as step 2 of the manual method.
The aca-watchdog spoke’s aca_scan_book tool is documented to “scan the agency’s ACA book for risk signals,” with findings posted to Ambrose Notifications (Ambrose docs, spoke-aca-watchdog). It isn’t documented as an age-specific check today, but it’s the right tool to pair with a DOB-driven Routine so the same monthly pass also catches the plan-year and carrier-exit risks it’s actually built for — one scheduled run instead of two separate manual processes.
| Manual step | Ambrose equivalent |
|---|---|
| Export every ACA client's DOB into a spreadsheet | ghl spoke reads live GoHighLevel contacts and custom fields, including DOB, no export needed |
| Manually calculate each IEP window and sort by start date | A Routine's prompt body does the date math on a monthly cron schedule |
| Remember to re-run the sort every month | Cron schedule runs it automatically; no one has to remember |
| Also check the ACA book for plan-year and carrier-exit risk | aca_scan_book from aca-watchdog, run in the same pass |
| Post the flagged list somewhere the team will see it | Routine output sink posts to Slack, a GHL note, or email |
| Keep the DOB list out of a general AI tool | PHI Rail aliases identifiers before anything reaches a non-BAA destination |
Ambrose’s Routines and the ghl and aca-watchdog spokes already give you the pieces to build this — one seat comes with the membership, and that’s the fastest way to try assembling it without writing a script from scratch.
This flags the window. It doesn't file the paperwork
A Routine that flags "this client's IEP opens in 90 days" still needs a person to have the conversation, confirm Social Security status, and time the actual Marketplace cancellation. Nothing here files anything on a client's behalf — it makes sure the right conversation happens with enough runway to do it right.
Compliance: two separate tracks, and what not to paste anywhere
Treat this transition as two distinct compliance questions, because they carry different rules.
Coordinating the ACA exit itself isn’t Medicare marketing. Helping a client report a Medicare start date and end her Marketplace subsidy is ACA-side administrative work. It doesn’t, on its own, trigger CMS’s Medicare Communications and Marketing Guidelines.
The moment the conversation turns to specific Medicare Advantage or Part D plan options, it does. That’s a TPMO activity, and it carries the same Scope of Appointment and disclaimer requirements as any other Medicare sales conversation. In practice, this conversation drifts there constantly — “since you’re aging off the Marketplace, have you thought about a Medicare Advantage plan instead of Original Medicare?” is a natural next sentence, and it’s the sentence that moves you from ACA coordination into Medicare marketing. Keep the two tracks separate in how you document the conversation, even when they happen in the same phone call.
If AI drafts or routes any part of the outreach, the NAIC’s AI Model Bulletin applies. Adopted in December 2023, it sets expectations that insurers govern AI use with a written program, and it tells regulators what a Department of Insurance may request during an investigation or examination (NAIC, Insurance Topics: Artificial Intelligence). States adopt the bulletin individually and adoption is ongoing, so confirm your own state’s current status. “I used an AI tool to draft the birthday-window outreach” needs to sit inside a documented policy, not just a subscription.
Don't paste a T65 client list into a general AI tool
A list of names, birthdates, subsidy amounts, and coverage status is exactly the kind of data a general-purpose AI tool's terms of service almost never covers under a BAA. Ambrose's PHI Rail runs a detection chain — known contacts, regex patterns, Presidio NER, then an insurance-specific dictionary — and aliases anything it catches into typed placeholders like PERSON_xxxx before it reaches a non-BAA destination, rehydrating the real values on the way back, with every scrub event logged (Ambrose docs, Architecture / PHI Rail). That's HIPAA-aware by default, not HIPAA certified, and AI outputs can still contain errors — verify anything it tells you about a specific client before you act on it.
What you get by joining
One Ambrose seat, including the Routines, ghl, and aca-watchdog spokes this article describes, comes with a Tech Savvy Insurance membership: $97 a month, billed monthly, cancel anytime, founding rate locked in while the membership stays active. Alongside the seat: weekly Zoom calls with open Q&A and build-with-you sessions, 30+ hours of recorded training, Meta Ads and marketing training built for this industry, pre-built AI templates and bot deployments, and a free annual in-person member workshop — plus an explicit no-recruiting rule, so you can ask a real question about your ACA book without ending up on someone’s downline pitch list.
Ambrose usage is separate from the $97 seat
The membership includes one Ambrose seat; usage inside Ambrose runs through its own credit ledger with spend caps, so cost stays visible instead of showing up as a surprise. See the full Spokes catalog for what else is available beyond Routines, ghl, and aca-watchdog.
The close
Everything above — the DOB export, the IEP calculation, the monthly sort, the HSA flag — works whether you ever join anything or not. That’s the point of writing it out completely: a client turning 65 on your ACA book shouldn’t find out there was a problem from her tax preparer. This is the kind of recurring check we build together on a Tuesday call, watching a Routine’s Slack output land with three names flagged 90 days before their windows open. $97 a month, cancel anytime, and nobody will pitch you a downline: https://techsavvyinsurance.com/.
Before you rely on anything in this article
Tech Savvy Insurance is a training and software community, not an insurance company, agency, or law firm, and does not provide insurance, legal, tax, or compliance advice. You are responsible for your own licensure and for complying with all applicable CMS, IRS, HIPAA, state, and carrier rules, including Medicare marketing and TPMO requirements once a conversation moves into specific plan options. AI-generated outputs may contain errors — always verify. Results may vary.
Frequently asked questions
Sources
- HealthCare.gov — Changing from Marketplace to Medicare — healthcare.gov
- Medicare.gov — Avoid Late Enrollment Penalties (2026 Part B premium, penalty math) — medicare.gov
- Medicare.gov — When Does Medicare Coverage Start (retroactive Part A) — medicare.gov
- IRS Publication 969, Health Savings Accounts (for 2025 returns) — irs.gov
- IRS Instructions for Form 8962, Premium Tax Credit (2025) — irs.gov
- NAIC — Insurance Topics: Artificial Intelligence (Model Bulletin, adopted Dec. 2023) — content.naic.org
- Ambrose docs — Routines — app.hiambrose.com
- Ambrose docs — aca-watchdog spoke — app.hiambrose.com
- Ambrose docs — ghl spoke — app.hiambrose.com
- Ambrose docs — Architecture (PHI Rail) — app.hiambrose.com
Ready to put this into practice?
Join a private community of Health & Life insurance professionals using AI, Meta Ads, and automation to grow — without draining their bank account.
Join Tech Savvy — $97/month