A care gap outreach list starts with your payer attribution file. Dedupe it, then add each patient's last visit date, annual wellness visit status, open quality measures and risk. Check phone validity, language preference and opt-out status. Rank patients by a written rule, run outreach in that order, and log every result.
Takeaways
The roster is not a call list
An attribution file tells you who you're accountable for, not who to call first or how to reach them.
Seven columns do most of the work
Last visit, AWV status, open measures, risk, phone validity, language and consent status.
Write the ranking rule down
A simple, written priority order beats a gut call, and it lets you explain the list to anyone who asks.
Opt-outs come before everything
Anyone who asked not to be contacted leaves the list, on every channel.
Attribution file vs. outreach list
Attribution is how a payer or ACO decides which patients count toward your practice's quality and cost results. The attribution file, often called a roster, lists those patients. It usually has member ID, name, date of birth, assigned PCP and sometimes a risk score.
What it rarely has is what your callers need. It won't tell you that a patient was seen last Tuesday. It won't tell you their cell number changed, or that they asked you to stop texting. A care gap report from the same payer may list open measures, but in a separate file with its own layout.
So the job is to join the roster with what you already have, then turn it into a list someone can work top to bottom. If you're starting from the payer's gap file instead, read how to analyze a payer care gap report with AI first.
The build, column by column
- 1
Dedupe the roster
Combine rosters from every payer and ACO. Match on last name plus date of birth, then member ID. Send near-matches to a person instead of auto-merging. A patient who appears twice gets called twice.
- 2
Add last visit date
Join a visit export from your EHR. Patients not seen in over a year are often your biggest gaps. Patients seen in the last few weeks may already have closed gaps the payer hasn't processed.
- 3
Add AWV status
Flag Medicare patients due for an annual wellness visit: more than 12 months past the start of Part B, with no IPPE or AWV in the past 12 months. One visit can close several gaps at once.
- 4
Add open measures
List each patient's open quality measures, such as breast cancer screening, colorectal screening, eye exam or A1c control. Keep the measure names readable, not just codes.
- 5
Add risk
Use the payer's risk score if the roster has one. If not, flag chronic conditions or recent ER and hospital use from your own data. Keep the method consistent month to month.
- 6
Check phone and language
Flag missing, malformed or duplicate phone numbers. Mark whether each number is mobile or landline if you know. Record preferred language so the first call is in the right one.
- 7
Check consent and opt-out status
Remove anyone who has opted out. Note which numbers the patient gave you directly. Keep this column on the list itself so no caller has to look it up.
Why the phone and consent columns matter
The Telephone Consumer Protection Act (TCPA) limits automated calls and texts. Health care messages from a HIPAA covered entity are exempt from the written-consent requirement, but plain prior express consent is still needed. Calls must stay between 8 a.m. and 9 p.m. in the patient's local time.
There is a narrower exemption for free health care calls and texts to wireless numbers. It covers things like appointment reminders, wellness checkups and lab results. It applies only to the number the patient provided, at most one message a day and three a week, with an opt-out honored immediately. No billing or marketing content is allowed.
Patients can revoke consent by any reasonable method, and you must honor it within ten business days. The FCC voted on September 30, 2026 to change parts of the revocation rules, and those changes weren't yet published when this was written. Check the current rule before you launch. Our TCPA guide for healthcare covers the details, and the TCPA glossary entry has the basics.
Write the prioritization rule
Once every row has these columns, decide the order. Write the rule down in plain words. Here's one that works for many primary care groups:
- Exclude anyone opted out, deceased or no longer attributed.
- Exclude anyone seen in the last 30 days or already scheduled.
- Rank first: patients with two or more open gaps who are also due for an AWV.
- Then: high-risk patients with any open gap.
- Then: patients due for an AWV with one open gap.
- Then: everyone else with a single open gap.
- Within each tier, longest time since last visit goes first.
Patients with bad phone numbers go to a separate list for mail or a portal message. Don't drop them silently. They still count against your measures.
In an AI workspace, you can give it the rule in plain English and ask it to apply it. Then ask it to explain why five specific patients landed where they did. If an answer surprises you, fix the rule, not the row.
Prompts to build the list
These work in any HIPAA-compliant AI tool with a signed business associate agreement. In Rivvi, the BAA is included on the free plan, and uploads are enriched against CMS and NPI registry data.
- "Here are rosters from two payers and one ACO. Combine them, dedupe on last name plus date of birth, and list possible duplicates for me to review."
- "Join this EHR visit export. Add last visit date and flag anyone not seen in more than 12 months."
- "Flag Medicare patients due for an AWV. Use both rules: over 12 months since Part B started, and no AWV or IPPE in the past 12 months."
- "Add the open measures from this gap report as a readable list per patient."
- "Flag phone numbers that are missing, the wrong length, or shared by more than three patients."
- "Remove every patient on this opt-out list. Tell me how many you removed."
- "Apply this ranking rule and give me the top 200 with phone, language, PCP and open items."
Save the ranking rule to memory once it works. Next month's list then uses the same logic. Your team can view or edit that memory any time.
Build your first list from a real roster
Free for you and two colleagues, with a HIPAA BAA included.
Run outreach and log every result
The list is only as good as what happens next. Decide who works it and how results come back.
If staff call: split the list by PCP or by language. Give each caller a short script per tier. Have them log the outcome in the same file or in your CRM, using a fixed set of results: reached and scheduled, reached and declined, left message, wrong number, opted out.
If the AI calls: on Rivvi's Team plan, the AI calls or texts down the list in the patient's language. When a patient wants an appointment and your schedule lives in the EHR, Rivvi doesn't book into it. It warm-transfers the patient live to your front desk, or creates a follow-up task with the details. Opt-outs are honored on every path. Outcomes are recorded in Rivvi and pushed to HubSpot, Salesforce or Zoho if one is connected.
For proof of scale: Southeast Medical Group reached more than 104,000 patients with Rivvi with a 0.45% opt-out rate (August 2026).
Either way, keep three numbers each week: patients attempted, patients reached and visits scheduled. Next month, compare the new gap report against this list to see what closed.
Common mistakes
- Calling from the roster directly. You'll reach recently seen patients and miss the ones who matter.
- Merging duplicates automatically. Two patients with the same name and birthday do exist. Have a person check near-matches.
- Keeping opt-outs in a separate file. Put consent status on the list itself.
- Changing the rule every month. Then you can't tell whether results changed because of outreach or because of the list.
- Treating your list as the official gap status. Only the payer closes a gap. Reconcile your counts against their portal.
For a dedicated workflow, see care gap closure.
Turn your roster into a call list
Upload the attribution file and ask who to reach first. Free, with a BAA. No card.