In a bowl, whisk the eggs until they're well combined. Season with a pinch of salt and pepper. Set aside.
Heat a non-stick pan over medium heat and add half the butter or oil. Once hot, add the spinach and garlic (if using). Cook until the spinach wilts, about 1-2 minutes. Remove to a plate.
Wipe the pan clean and return to medium heat. Add the remaining butter.
Pour in the beaten eggs, tilting the pan to spread them evenly. As the edges set, use a spatula to gently lift them, letting the uncooked egg flow underneath.
When the eggs are mostly set but still slightly wet on top, add the ricotta in small dollops on one half of the omelet. Add the cooked spinach.
Fold the empty half over the filling and cook for another minute until the eggs are fully set.
Slide onto a plate and sprinkle with Parmesan if using.