お (used with 和語 – native Japanese words)
ご (used with 漢語 – Sino-Japanese words)
Exceptions (漢語 but use お)
The prefixes お and ご are honorific markers attached to the beginning of nouns, adjectives, and some verbs to add politeness, respect, or elegance to speech. They are among the most fundamental elements of Japanese keigo (polite language).
As a general rule:
There are notable exceptions, such as おでんわお電話、おりょうり料理、おしょくじ食事、おへんじお返事, which use お despite being Sino-Japanese words.
When referring to things that belong to or relate to someone else (especially someone of higher status), お / ご expresses respect.
お / ご can be used simply to make one's speech sound more polite or elegant, regardless of who the item belongs to.
Some words have become inseparable from their prefix and are almost always used with お or ご, even in casual speech: おちゃお茶 (tea)、おかねお金 (money)、おかしお菓子 (sweets)、おふろお風呂 (bath)、ごはんご飯 (rice/meal)
These are no longer felt as "polite" but are simply the standard way to say the word.