He cancels then apologizes but keeps doing it again
When a guy repeatedly cancels plans and apologizes, it's a pattern, not a mistake. Here's how to respond and what it actually means.
A guy who cancels once, apologizes, then cancels again is showing you his actual priority level. The apology feels real because he probably means it in the moment. That doesn't change what his behavior is telling you: plans with you aren't firm commitments to him.
A good reply here does two things at once. It stops rewarding the cycle by accepting apologies without consequence, and it gives him a clear choice about whether to actually change. You're not punishing him. You're just stopping the pattern from continuing on autopilot.
This isn't about being cold or setting rules. It's about matching what you do with what you actually want. If someone cancels twice, accepting a third apology and rescheduling again trains him that canceling has no cost.

Get replies that sound like you
Screenshot the conversation in WingAI. It reads the vibe and gives you natural replies for this exact situation.
Try for freeRizz AI Screenshot the chat and get the next message for this person.
The cancellation pattern is the real message
One cancellation is life. Two cancellations with an apology in between is a pattern. By the third time, you're watching someone show you how much he values seeing you relative to whatever else comes up. The apology is real, but it's also noise. What matters is the behavior.
When someone says "something came up," he's being honest. Things do come up. The question is whether you matter enough that he protects the plan when things do come up, or whether you're the thing that gets moved. Someone who wants to see you reschedules immediately and picks a day soon. Someone cycling through apologies and cancellations is showing you what he chooses when forced to pick.
Stop the apology reward loop
Each time you accept an apology and reschedule, you're teaching him the pattern works. Apologize, get forgiven, try again later. No consequence. A reply that breaks the loop does this: it acknowledges the apology so you're not being cruel, but it doesn't reward the behavior by smoothing things over and making new plans.
The move is to pause the cycle. Don't reschedule in your next message. Tell him clearly that this is the second time, you get that life happens, but you need him to show you it won't happen again before you spend energy on another plan. Then stop initiating. Let him decide if he wants to change or if he's going to repeat. His next move tells you everything.
Wait for his move, then decide
After you send a reply that doesn't immediately reschedule, do not text him again about plans. If he's serious about changing, he'll reach out and suggest something specific. Soon. Days, not weeks. When he does, he'll likely offer a real date and time, not a vague "let's do something soon."
If a week goes by with no follow-up from him, you have your answer. If he does reach out and suggests plans, go. But if he cancels a third time, you're done responding to apologies. You've already given him the information he needs. Responding again just extends the conversation past its useful point.
Why these replies fail
“no worries! life happens. how about next weekend instead?”
This rewards the cancellation by removing any friction and immediately offering another plan, teaching him canceling works fine.
“this is really frustrating. you always do this and it's honestly disrespectful.”
Getting emotional and accusatory turns this into an argument instead of a clear boundary, and he'll focus on defending himself rather than hearing that the pattern is the problem.
“ok whatever. i'm done.”
Ghosting without explanation leaves him confused and doesn't give him the chance to actually change, so you don't get to see if he would.
Common mistakes
- Accepting the apology and rescheduling immediately, which reinforces that canceling works
- Saying nothing and just removing him from your life, when a direct moment would be clearer
- Getting angry in your reply, which turns it into an argument instead of a boundary
- Rescheduling for a vague future date instead of requiring a concrete time or stopping there
- Texting back right away, which signals the cancellation didn't actually cost him your attention
Questions people ask
- Should I tell him this is the second time he's canceled on me?
- Yes, directly. Say it once, clearly: "I get that work stuff happens, but this is the second time. I need to see that this won't keep happening before I plan something else." Then stop. You've given him the information. Repeating it is nagging, not boundary-setting.
- What if he says he'll reschedule and never does?
- That's your answer. He's shown you that saying yes to a reschedule and actually following through are different things for him. You can stop texting him. You've tried twice. You don't need a third or fourth data point.
- Is it bad to just ignore his apology and move on?
- Not bad, but less clear. A short reply that doesn't reschedule tells him exactly why things stopped, so if he does want to change, he knows what to do. Silence leaves it ambiguous.
- What if he cancels again after I told him it's a pattern?
- Stop responding to apologies. You've already told him the consequence. A third cancellation means you go quiet. No anger, no lengthy explanation. He got the message. He chose not to respect it.
What people say after using WingAI
“I was skeptical at first. Then I tried it on a dry chat and the replies actually sounded like me, not a chatbot.”
Mazoonx
“I overthink every text. Having three options and picking the one that sounds like me cut that spiral short.”
Sam R.
“Used it for a couple hours and set up a date the same night. Not even kidding.”
Nikola2214
Get replies that sound like you
Screenshot the conversation in WingAI. It reads the vibe and gives you natural replies for this exact situation.
Try for free