More than three weeks ago, responding to rocket fire from Gaza, Israel launched a campaign of airstrikes against Hamas. Two weeks ago, Israeli ground forces went in. The balance of military power is so lopsided that Israel can do whatever it wants. But that freedom makes it difficult for the winning side to recognize when it’s time to stop. Here are some clues that suggest that time is now:

1. Your enemy refuses to protect its people. Normally, if you invade a country and pound the daylights out of it, you can expect its government to seek, or at least accept, a cease-fire to stop the bleeding. Not here. Hamas has refused to endorse or honor a simple cease-fire despite the ridiculous imbalance of casualties.

Israel argues, correctly, that Hamas doesn’t care about Gazan civilians. Hamas also seems fragmented, unable to make decisions. Arab governments aren’t stepping in, either—they seem to hate Hamas more than they love Gazans. But the absence of competent advocacy for Gazans isn’t a reason to keep shooting. It’s a reason to stop. When your enemy shows no mercy for its own people, that responsibility falls to you.

2. You’re killing too many civilians. Last time I checked, on a per-strike basis, Israel’s rate of inflicting civilian casualties was lower than NATO’s in the Kosovo war. But in just three weeks, Israel has launched so many strikes that its civilian casualty toll has eclipsed NATO’s.

Even if you set aside mass-casualty incidents for which Israel has denied responsibility (sometimes with independent evidence), there are too many other cases in which its excuses don’t begin to justify the death toll. On Wednesday, when the U.N. cited evidence that the Israel Defense Forces had killed 19 civilians in an artillery strike on a U.N. school, Israel said it was only shooting back at militants who had fired mortars “from the vicinity.” On Thursday, an airstrike apparently injured 15 Gazans at a U.N. school during a strike on a nearby mosque (presumably targeted for housing military assets). Another 17 people died in a strike on a market on Wednesday. An Israeli military source told reporters that in two of these cases, terrorists “fired at IDF troops ... and our troops returned fire. It may be that one of our shells fell in the market.”

3. Your civilian protection measures are failing. I’ve praised the IDF for its exemplary double-layered warning system: phone calls to residents of buildings, followed by dummy bombs designed to scare people out of the building before the real strike hits. The IDF has also robo-called and leafleted neighborhoods, warning people to clear out before the area is invaded. But these measures are failing. Some people never got phone calls. Others misunderstood the dummy bombs and went back into their houses, thinking the strike was over. Some stayed in targeted neighborhoods, afraid to move. Others moved only to end up in places they mistakenly thought were safe. The further the IDF advances into overpopulated Gaza, the harder it is for civilians to find a refuge. At some point, you have to acknowledge that your worthy efforts aren’t enough.

4. Your mission and methods keep expanding. First the IDF was just going to hit Gaza from the air. Then it went in on the ground, but Israel assured everyone that the target was just the tunnels. Then Hamas killed a bunch of Israeli soldiers in a surprise attack, and Israel retaliated with widespread shelling. This week, the Israeli air force has been hitting 100 to 200 targets a day. How does that fit a campaign against tunnels? The strikes are on suspected weapon storage sites and “homes of terrorists.” Israel keeps moving the goal post, redefining the conditions that would meet its vague objective of “sustainable quiet.” That’s the beginning of mission creep. Where does it end?