Oberhergheim fait partie du canton d'Ensisheim et de l'arrondissement de Thann-Guebwiller. Les communes qui l'entourent sont Niederentzen, Biltzheim, Niederhergheim, Oberentzen et Sainte-Croix-en-Plaine.
La commune est traversée par l'Ill, une rivière baignant la plaine d'Alsace, et le canal Vauban.