Reading from Analog Magnetometer with Raspberry Pi
This isn't specifically for ADCs, but for mixing analog and digital circuits in the same device. 

Digital circuits are usually fairly noisy, and you want to keep that noise away from the analog part of your circuit as much as possible, and part of that is keeping the two systems separate. 


Firstly, you want to ensure that you have good decoupling on your power rails, and it looks like you've done that. 
Second, you want to keep the digital signals (in your case the data lines and especially the clock) away from any analog signals if at all possible to minimize crosstalk. 
Finally, you want to separate the digital power supply if you can, and have a single connection to a rail if you can't. In your case, this would mean connecting the AGND and ground for your magnetometer together, along with decoupling components, and having a single wire or trace connecting to the digital ground, same for power.


Depending on how accurate you're trying to be, these may not really be necessary, but they do help for more demanding analog circuits.

Edit: Regarding the single ground connection, imagine you have an analog ground plane and a digital ground plane, and your analog plane connects to the digital plane at a place where there is 0.1V noise. Assuming you have good decoupling, this shouldn't be an issue because your Vcc rail will have the same noise placed on it, and your analog signal will only see the difference between Gnd and Vcc, which should be fairly stable. Your analog signals are going to have 0.1V of noise referenced to the power supply/digital ground, but since the noise is the same for the entire analog circuitry, it doesn't matter.

Now let's assume you have your ADC connected to that same place with 0.1V noise, and your magnetometer connected to a place where there is 0.2V noise. Again, the power supply for each chip will have the same noise presented to it (because of decoupling), so separately, the chips won't see the noise. However, when you feed the signal from the magnetometer (Which has 0.2V of noise on top of it), to the ADC (whose ground has 0.1V of noise), the ADC will see 0.1V of noise on the magnetometer signal. 

The situation is just as bad when you fuse the planes together, because now the ground of the analog circuits will see the large currents from the digital circuits, and every analog circuit will see a different voltage for ground.