The CEO of Walmart announced earlier today that all of the company’s employees will, starting in April, be paid at least $9 an hour, nearly $2 more than the federal minimum wage. That’s still far short of the $15 per hour pushed for by OUR Walmart, a union-like group of Walmart workers. Still, it's a change for a company that has stubbornly opposed such a raise for years.

Walmart’s CEO framed the raise as an act of corporate benevolence, but the reason his company will inch closer to paying all its employees fair wages has little to do with goodwill (few business decisions do). If Walmart has determined that it’ll need to start paying higher wages to stay competitive, then other retailers might arrive at the same conclusion. This isn’t an isolated act of corporate social responsibility—it’s a response to the current realities of labor economics that will likely inform the behavior of other American employers.

But the question remains: why now? Walmart’s decision can be read as a response to two trends that are highly salient at the moment.

First, the company is giving in to mounting criticisms about its pay practices. “Walmart’s move shows the success of continued pressure by wage campaign groups that have been pressuring the company for many years,” says Nicholas Bloom, a professor of economics at Stanford University. While a raise might mollify critics for now, Bloom thinks it won’t last. “They are buying peace—or at least a temporary ceasefire—from their low-pay critics. But as we know from history, ceasefires often fail."