Heat the olive oil in a medium saucepan over medium heat.
Add the chopped onion and sauté for about 3-4 minutes until translucent.
Stir in the minced garlic and sauté for an additional 1 minute until fragrant.
Add the rice to the saucepan, stirring to coat it in the oil and combined with the onion and garlic. Cook for about 2-3 minutes until the rice is slightly toasted.
Pour in the vegetable broth (or water) and add the diced tomato, cumin, chili powder, and salt. Stir well to combine.
Bring the mixture to a boil. Once boiling, reduce the heat to low and cover the saucepan with a lid.
Let it simmer for about 15-18 minutes until all the liquid is absorbed and the rice is tender.
Once cooked, remove from heat and let it sit, covered, for another 5 minutes to steam.
Fluff the rice with a fork and serve hot. Garnish with fresh cilantro if desired.