# CKKS Plaintext Precision

**URL:** <https://openfhe.discourse.group/t/ckks-plaintext-precision/1881>\
**Category:** Library Questions\
**Created:** [February 18, 2025, 4:50pm UTC](https://openfhe.discourse.group/t/ckks-plaintext-precision/1881 "2025-02-18T16:50:48Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![lawrenceklim](https://avatars.discourse-cdn.com/v4/letter/l/e95f7d/32.png) [@lawrenceklim](https://openfhe.discourse.group/u/lawrenceklim)\
**Post date:** [February 18, 2025, 4:50pm UTC](https://openfhe.discourse.group/t/ckks-plaintext-precision/1881/1 "2025-02-18T16:50:48Z")

</div>

Hi, I just have a quick question: When I obtain the precision of the plaintext via `GetLogPrecision()` or by printing out the plaintext, how should I interpret that both intuitively and technically? Is precision independent of the real values themselves?

---

<div class="post-metadata">

**Author:** ![Caesar](https://yyz1.discourse-cdn.com/flex031/user_avatar/openfhe.discourse.group/caesar/32/63_2.png) [@Caesar](https://openfhe.discourse.group/u/Caesar)\
**Post date:** [February 18, 2025, 5:37pm UTC](https://openfhe.discourse.group/t/ckks-plaintext-precision/1881/2 "2025-02-18T17:37:18Z")

</div>

Internally, CKKS converts input real numbers into integers by scale and round. The scale factor is close to 2`scaleModSize` where `scaleModSize` is a parameter that can be initialized in the user application.

The precision (in bits) you see is defined as `scaleModSize` - \log\_2{}(error), where error is the estimated accumulated error in the ciphertext due to homomorphic operations.
