Start by peeling and dicing the potatoes into roughly 1.5 cm cubes. Set aside.
Heat the oil in a heavy-bottomed pan over medium heat until shimmering. Add the cumin seeds and cook for about 30 seconds until fragrant and crackling.
Add the finely chopped onion and sauté, stirring frequently, until golden brown and caramelized, about 8 minutes. You should hear a gentle sizzle and see the onion turn a rich amber color.
Stir in the turmeric and ground cumin, cooking for about 30 seconds until the spices release their aroma. Then add the minced garlic and grated ginger, sizzling for another 20 seconds until fragrant.
Next, add the diced potatoes to the pan, stirring well to coat them with the spice mixture. Cook for about 5 minutes, stirring occasionally, until they start to turn golden around the edges.
Pour in the chopped tomatoes and stir to combine. Cover the pan and let it simmer on low heat for 10 minutes, until the potatoes are nearly tender and the sauce begins to thicken.
Uncover and cook for another 5 minutes, stirring gently, until the sauce has thickened further and the potatoes are fully tender. If it gets too dry, add a splash of water.
Add the roughly chopped spinach to the pan and stir until it wilts, which should take about 1–2 minutes. The spinach will turn a vibrant green and release a fresh aroma.
Taste and adjust the seasoning with salt and pepper. Turn off the heat and let the curry rest for a couple of minutes to allow flavors to meld.
Serve the hot spinach potato curry with rice or flatbread, garnished with a squeeze of lemon if desired. Enjoy the vibrant flavors and tender textures in every bite.