According to this site Magnetic North, Geomagnetic and Magnetic Poles
The Geomagnetic poles (dipole poles) are the intersections of the Earth's surface and the axis of a bar magnet hypothetically placed at the center the Earth by which we approximate the geomagnetic field. There is such a pole in each hemisphere, and the poles are called as "the geomagnetic north pole" and "the geomagnetic south pole", respectively. On the other hand, the magnetic poles are the points at which magnetic needles become vertical. There also are "the magnetic north pole" and "the magnetic south pole".
But why does the compass needle not point to the geomagnetic pole? I mean why aren't they both at the same location?