Add butter to a heavy bottom deep pot and begin to melt on a medium flame.
Butter melts and turns frothy. Then lower the flame & simmer until all of the froth evaporates. I usually leave a ladle/spoon in the pot as this prevents overflowing.
Next butter will begin to bubble a lot. Stir it occasionally & continue to cook on a low heat.
Soon the butter changes its color from yellow to clear golden. At this stage milk solids will settle at the bottom & begin to turn slightly light golden/brown. Also bubbles will reduce significantly indicating it is done.
Turn off the stove and set the pot aside to cool down. This step is important to avoid overcooking or burning it.
Ghee will continue to cook on its own for another 1 to 2 mins since the pot is hot. By then the ghee is perfectly done - clear, golden in color and all the milk solids browned but not burnt.
When the temperature comes down, place a strainer over a clean jar and filter it. Press down the brown solids with a spoon.
Cool the ghee completely and cover it with a tight lid. Store at room temperature in a dry cabinet for upto 3 months or refrigerate for an year. Ghee will solidify in a few hours or days depending on the temperature.
Instant pot ghee
Press SAUTE button (normal) on the Instant pot and add the butter to the inner steel pot.
Butter will melt and turn frothy. Press the saute button twice again to adjust from normal to less.
After a few minutes, the butter changes its color from yellow to clear golden. The milk solids settle down at the bottom.
Press the CANCEL button. If the milk solids turn to light brown then remove the steel insert from the Instant pot. If the solids are still white in color you may leave the pot in. Ghee will continue to cook there and brown the milk solids.