The motorcycle exhaust catches morning light through the haze, creating colors that shouldn't exist—copper threading through gray, a shimmer like oil on water. Sari watches from her window as particulates settle on yesterday's laundry. The sensor glows red: 156. She can taste it now, the specific metallic-sweet of motorcycle exhaust distinct from the truck diesel that will come later, from the burning trash smell that means someone three streets over is clearing their yard.
Her throat knows the difference. Her body has learned.
Below, Adi kills the engine, wipes his face. His eyes are already red-rimmed but he doesn't seem to notice. She wants to ask him to park on the street but they've had this conversation six times this week and the math doesn't change. Seventeen hours for 100,000 rupiah, minus gas, minus the 5,000 rupiah for street parking that the neighbors won't cover.
Inside, Dini is singing. She's invented a game with the sensor readings, assigning them colors and moods. 156 is angry-red. 178 is furious-purple. Below 150 is happy-yellow, which she hasn't seen all week. The song is off-key and absurd and makes Sari's chest hurt.
"Could you maybe—" Sari calls down.
Adi looks up. "I'll park on the street after my first run."
But his first run won't come until the app decides, and by then Dini will want to play outside where morning light makes the haze beautiful.
By noon, Sari has sealed Dini's window with tape and wet towels. Indoor air runs higher than outside in their kampung—something about the walls, the ventilation, how their building holds everything in. Dini presses her face against the glass, still singing her color-song, but her breathing sounds wrong. Paper tearing. Sari counts the breaths, calculates exposure time, realizes she's become fluent in a mathematics she never wanted to learn.
She's started tasting particulate composition. Motorcycle exhaust has copper notes. Truck diesel tastes like rust. Burning plastic leaves a chemical sweetness at the back of her throat that lingers for hours. She can distinguish them now, catalog them, predict when the reading will spike based on what her tongue tells her.
Yesterday at the clinic, the doctor checked her throat, found nothing. "Your readings are normal," he said, consulting the chart. Sari tried to explain about the irritation at 180, the copper taste, how her body knows before the sensor does. He looked confused. "You should be experiencing symptoms at 160. Are you sure about these numbers?" She was sure. Her body was sure. But the doctor's confusion made it clear: she's shifting into territory the system doesn't recognize. When she adapts, when Dini adapts, who will believe them?
Adi returns at 12:30, parks in the courtyard because the street spot is taken. He's coughing now, the deep wet kind. His phone pings with the next order. He sees Sari watching, sees Dini's face against the glass.
"I can't—" he starts.
"I know."
Late afternoon, Adi brings home an air purifier. Used, probably broken, bought from a street vendor for 50,000 rupiah he didn't have. He sets it up in the courtyard, plugs it into the shared outlet.
"For Dini," he says.
The machine whirs. Sari tastes the air shifting—the copper notes thinning, the rust fading. Dini stops singing, presses her face against the window, breathing easier. Happy-yellow, she whispers.
Adi's phone pings. He looks at the purifier, at his motorcycle, at the order that will vanish in thirty seconds.
"Go," Sari says.
He goes. The taste returns before he's out of the courtyard—copper threading through gray. Sari measures the climb without looking at the sensor. Her body knows before the machine does.
That night, Adi sits beside the purifier, his phone dark. "I missed the evening bonus."
Sari sits beside him. The machine hums between them, pulling particulates from air that keeps replacing itself. Dini is sleeping without that terrible paper-tearing sound.
"You're not coughing anymore," Sari says.
"My throat still hurts."
"Mine doesn't." She says it quietly. "Not anymore. Not even when the taste gets strong."
He looks at her. "That's good, right? You're adapting."
She doesn't answer. Her throat has learned to process what it shouldn't process, survive what it shouldn't survive. She doesn't know what that means for Dini—if her daughter's body changes like this, who will believe her when she says she's sick?
Adi's phone lights up. Another order. He looks at the purifier, at Sari, at the courtyard where trucks rumble past, kicking up dust that settles on everything.
"Go," she says.
He goes.
Sari sits alone in the filtered air, tasting its composition. Above them, the haze holds morning light, copper and rust and shimmer. She opens her mouth, lets the air settle on her tongue. The faint chemical sweetness of burning plastic from somewhere beyond the courtyard. Her throat doesn't close. Her body doesn't protest. She breathes deeper, testing herself, cataloging what she can survive, what Dini might learn to survive.
Inside, her daughter stirs in sleep. The purifier hums. The rain will come eventually, washing everything clean for a few weeks before the cycle starts again. But for now, Sari breathes, her body processing poison like it's learning a new language.
Things to follow up on...
-
Jakarta's climate whiplash ranking: The Indonesian capital ranks second globally for climate whiplash severity, experiencing rapid swings between extreme flooding and dangerous drought that compound air quality challenges.
-
Indoor pollution exceeds outdoor levels: Lower-income Jakarta households experience nearly double the indoor PM2.5 concentration of wealthier homes, largely due to structural differences in housing quality and ventilation systems.
-
Gig workers' economic pressure: Motorcycle taxi drivers in Jakarta now earn as little as 100,000 rupiah for 17-hour workdays, down from 300,000 rupiah when platforms first launched, forcing them to work outdoors regardless of air quality.
-
Respiratory infection surge in 2025: Jakarta recorded nearly 2 million acute respiratory infection cases between January and October 2025, with toddlers accounting for over 19% of cases as air pollution and population density create ideal conditions for respiratory illness.

