As known from Cisco documents, total size of the buffer used to store the "ECC variables" internally is 2000 bytes.
Is there any constraint similar for User Variables?
Did some googling and found this one from the link below
Its says "User Variables are up to 40 characters in length, with no specific limit to the amount of them,
the data collected is stored in a specific way"
Can you please confirm is there any buffer limit to User Variables in ICM?
The ECC variable limit is 2500 bytes, not 2000.
There is no hard limit for User Variables, though I suspect if you had more created than what can fit in the RAM on the router, you would have some issues. You would likely need many thousands of User Variables in order to use gigabytes of RAM, though.
The use cases for ECC and User variables are quite different... an ECC variable is for data about the current call, while User Variables are usually more appropriate for "global" data that needs to last across multiple calls, such as open/closed states.