There is lots of people who think that a compass needle points to the North Pole. Actually, it's quite not exact. The compass needle points to the Magnetic North Pole, its location doesn't match with the location of the True North Pole. Moreover, the Magnetic North Pole drifting quite fast, and now it is located about 1074 km from the True North Pole (for epoch 2015). By the way, if there is some local Magnetic anomalies, the compass needle will not point to the Magnetic North Pole, it will point somewhere else. But in any case, the compass needle pointing along magnetic field lines of the Earth.
The Figure 1 shows the position of the Magnetic North Pole on the globe. As we can see from the picture, in different places of the planet there is an angle between directions to the Magnetic North Pole and the True North Pole. This angle is called the Magnetic Declination. If the Magnetic North Pole is located to the right of the the True North Pole (the compass needle declines to the east), then the Magnetic Declination is eastern (positive). Otherwise, if the compass needle declines to the west, then the Magnetic Declination is western (negative). If both directions match, the Magnetic Declination is zero.
How to find Magnetic Declination for given latitude and longitude? It takes the Geomagnetic Data provided by the National Geophysical Data Center. There is a Magnetic Declination Estimated Value Calculator. For example, if you enter in that calculator geographic coordinates of Moscow (55.75 N 37.61 E) for the epoch 01 January 2015, you'll get the value of the Magnetic Declination:
Declination = 10°71' E, changing by 0°12' East per year.
Also you can download a Magnetic Declination Map of the World. A fragment of such map is shown on the Figure 3.
Fig. 3. A fragment of the Magnetic Declination Map for the epoch 2010.
For example, we want to go east (the azimuth = 90°) using a map. Our location is Moscow (coordinates of Moscow are 55.75 N 37.61 E). We got the Magnetic Declination for Moscow from the site NOAA for the current data (01.01.2015): 10°71' E (this is the Eastern Declination). On the Figure 4 is shown the compass needle position with respect to the direction of the true True North Pole:
Because in this case the Magnetic Declination is eastern (positive), we have to subtract the current Magnetic Declination from that geographic (true) azimuth we want to follow to get the correct azimuth on the compass:
90° - 10° = 80°.
The 80° is the Magnetic Azimuth (the compass reading) we have to follow to move exactly to the east (the azimuth is 90°). Of course, if we have to go a very long distance (thousands miles, or hundreds miles if there is some local Magnetic anomalies), then we have frequently correct the Magnetic Declination.