GNSS surveys can accurately determine the geodetic position, but the elevation values do not have physical meaning for the purposes of engineering work. Physical height can be determined through the gravimetric geoid model representing the relationship between the geometric and physical shapes of the earth. Theoretically, the gravimetric geoid model is a solution of Boundary Value Problems (BVP) to obtain the boundary value in the form of the geoid surface. Before the era of GNSS, a BVP was calculated using Stokes or Molodensky approaches. Another approach that was quite difficult to be practiced in that era was Hotine approach. This approach requires gravity disturbance data on surface of the earth or on the geoid itself. This paper presents an accurate gravimetric geoid modelling based on terrestrial gravity data in Semarang using Hotine’s approach. The main gravity data was measured in March 2016 using Scintrex CG-5 gravimeter which has an accuracy of 5 microgal. It covered an area about 1 arc degree squares. Additional gravity data for improving the accuracy of the geoid models was measured by some government and private agencies using analogue gravimeters. It covered Jawa island. The global geopotential model was GECO with maximum degree 2190. The results showed that the computation of Hotine’s integral for modelling the geoid of Semarang city had an accuracy of ± 0.044 m. In the region of land subsidence, the geoid model is quite prospective to be implemented as the Vertical Reference System (VRS). Measurement of elevation of a distant point using geoid can be completed in a matter of hours, while using spirit levelling completed within a matter of days.