What you are missing is the meaning of "decimation."
Strictly speaking, "decimation" is reduction to 1/10. That is, from 10 reduce to 1.
"Decimation" as used in sampling loses the strict meaning. Rather than 1/10, it means "to reduce in number."
What this means is, that you average some number of samples, and reduce the number of samples by the same number.
As an example, if you sample at 1000Hz and average 4 samples, you only keep the average. At the end, you only have 250 samples per second instead of 1000. You've lost time resolution, but gained one bit of voltage resolution.
For each factor of 4, you gain 1 bit. Average and decimate by 4, and go from 10 bits resolution to 11 bits of resolution.
Another factor of 4 (4*4=16 total) gets you from 10 bits to 12 bits. Another factor of 4 gets you to 13 bits of resolution.
But, note that you are now oversampling by a factor of 64. Your effective sampling rate goes down by the same factor. Using the example of 1000Hz sampling rate, you are down to about 15 effective samples per second.
This is decimation, and it is how many high bit ADCs get their high resolution. They sample at a high rate, average (or use a digital low pass filter) and decimate.
At the extreme end, you have a single bit ADC (a simple comparator) that oversamples by several millon times to give an effective bit depth of 16 bits.
One thing you need to keep in mind for this to work is that you need noise in your signal approximately equal to the smallest value your ADC can measure. For a 10 bit ADC using a 5V reference voltage, that would be noise of about 5mV peak to peak.
Averaging the noise is where the bit gains actually come from. Imagine that you have a signal (DC) that lies exactly between the value of 512 ADC counts and 513 ADC counts. With no noise, the value measured will always be the same - averaging will give you the same value as the samples.
Add noise at just about the smallest measurable value, and it looks very different. Though the signal itself doesn't change, the measured values will "wiggle" around the true value of the signal. The average now is different than the samples, and the more samples you use the closer you get to the real value of the signal
I have used this technique with an Arduino (which uses an Atmel processor with a 10 bit ADC) to get better resolution for some measurements I was making.
I got it up to 13 bits, but found I needed more. I could have gone for another factor of 4, but that would have taken too long for each sample and only gotten me one more bit.
The experiments with oversampling showed that what I was doing could work (I got recognizable but noisy results) without having to spend time and money to get a better ADC. With proof of concept, I could go ahead and get that better ADC - and getting that proof only cost me a few lines of code and a little time.
I found I needed at least 16 bits. That would have meant averaging 4096 samples.
That's about half a second using the fastest sampling possible with the Arduino software.
Since I needed 14400 measurements, the full run would have taken 2 hours.
I'm not that patient, and the things I was measuring wouldn't stay constant for that long. I had to switch to using an ADC that uses a much higher oversampling rate internally, and that delivers higher resolution samples at a lower rate.
As with so many things, decimation is compromise that can get you better performance in one direction (bit depth) while costing you performance in another direction (sampling rate.)