I wish DSNs and CGM vendors would be more honest about their limitations and it wasn't left to word of mouth.
The areas of inaccuracies you have noticed, are known. CGMs are inaccurate at high and low readings which is why it is recommended to check before treating (unless you are experiencing an obvious hypo).
But there are other limitations
- Insertion trauma - some of us find the readings can be inaccurate for up to 48 hours after inserting a sensor. This is due to our body reacting to an alien object in our arm. This is why some of us insert a new sensor a day or two before activating it.
- compression lows. When pressure is applied to a sensor, it can block off flow to the filament resulting in a false low reading. This is most common at night when we lie on our arm when asleep.
- standard meter accuracy. All glucose meters sold in the UK must comply with a standard to be within 15% of the "true" reading 95% of the time. Therefore, your 20.7 and 24.7 could be reporting in the same reading of 22 and still comply with this standard
- predicting current readings. CGMs do not read BG, they read interstitial fluid and convert this to BG. However, changes in BG are reflected in changes in interstitial fluid 15 minutes later. Libre takes this into consideration by "predicting" the current readings through extrapolation of the current trend. So your Libre will show approximately the current readings and us NOT the reason for the inaccuracies you mentioned . This prediction works most of the time except when the trend direction changes in the past 15 minutes such as recovering from a hypo. This has two impacts: a prediction maybe overwritten so you may see a high value which disappears from a graph; hypos appear to take longer to recover from.
These are all reasons why it is important to check CGM readings with finger pricks especially when high, low or you do no "feel" what it is reporting.