> For the complete documentation index, see [llms.txt](https://docs.honey.finance/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.honey.finance/lending-protocol/interest-rates/protocol-tokenomics.md).

# Protocol math (Ethereum)

## Utilisation

This current state of supply and demand for liquidity is measured with the **utilisation rate**, in other words, how much of the supplied liquidity is being borrowed (utilised) by borrowers. The higher the utilisation rate, the higher the interest rate in a lending market.

{% hint style="info" %}
*Ut* = utilisation rate at time *t*\
*Uoptimal* = optimal utilisation rate\
\
\&#xNAN;*Rv* = variable borrow rate\
\&#xNAN;*Rv0* = base variable borrow rate (interest when utilisation = 0%)\
\&#xNAN;*Rslope1* = constant which determines the progression of the interest rate **until** Uoptimal\
\&#xNAN;*Rslope2* = constant which determines the progression of the interest rate **after** Uoptimal
{% endhint %}

The protocol has built in incentives in the interest rate model. To be capitally efficient, it sets an *optimal utilisation rate.* Below this rate, the protocol will incentivise utilisation, above this rate and it will disincentivise utilisation.

Two different slopes are used to measure interest rates, one for when utilisation is below optimal, and one for when it is above the optimal rate.

When not enough borrowers are borrowing available liquidity, the interest rate will be calculated as such:

$$
R\_v =R\_{v0} + (U\_t \div U\_{optimal}) \times R\_{slope1}
$$

When too many borrowers are borrowing available liquidity, the interest rate will be calculated as such:

$$
R\_v = R\_{v0} + R\_{slope1}+(U\_t - U\_{optimal})\div(1-U\_{optimal})\times R\_{slope2}
$$

## Protocol parameters

Honey Finance lending markets use the following parameters as default:

{% hint style="info" %}
**Optimal utilisation**: `80%`\
**Borrow APR at Uoptimal**: `40%`\
**Base borrow APR**: `10%`\
\
**Rslope1 constant**: `0.3`\
**Rslope2 constant**: `1`
{% endhint %}

You can try these parameters out for yourself and test models [here](https://share.streamlit.io/simeongk/interest-rates/main.py).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.honey.finance/lending-protocol/interest-rates/protocol-tokenomics.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
