Filter to one tier, sort by last contacted with the oldest first, and reach out to the names at the top without cherry-picking.
The idea
Left to choose, we cherry-pick. Filter and sort takes the choosing away: the list tells you who's next, and it's someone you haven't talked to in the longest time. It's a fun exercise I run in my weekly program.
How to do it
Filter your CRM or list to one tier (your A's, or your B's).
Sort by last contacted, oldest first.
Reach out to the first names on the list. DON'T CHERRY PICK. If you feel like skipping someone, that's even more reason not to.
Talk about anything but business. Then feel good about it.
A weekly rhythm we used: one A, where the task is to try to get together (the try counts, the meetup doesn't have to happen), and five B's, where just saying hi is plenty.
Example
The name that makes you wince a little is your person. They probably feel the same guilt about you, each of you assuming the other is annoyed. I honestly can't think of a single time a "long time no talk" message got rejected. At worst, silence, which was already there.
Script
"Hey! Long time no talk. Just thought of you."
"Hey, you popped into my head today. How's everything going on your end?"
Watch out for
The apology tour. "Sorry I dropped the ball" makes it about your guilt. Skip it and keep it about them.
Browse Your Relationships Like Netflix: On a fixed daily trigger, scan your list of key people, ask who you want to reach or have something for, and send one message.
A/B/C Spheres: Sort everyone into three tiers by gut feeling (love, like, don't know) and spend more time on A's than B's, and more on B's than C's.
Scrollbacks: Scroll back months in your texts, stop on someone you like, send "just thinking of you," and do exactly three.
It's Never Been Too Long: Relationships have no expiration date. After any gap, assume they'll be happy to hear from you, and reach out with no agenda.