Agora's offer letter tool allows for companies to make flexible offers to candidates. A Flexible Offer gives the candidate the power to determine the make up of their total compensation. They're able to opt for a higher base salary or higher equity, depending on what level of ownership they want in the company.
When receiving a flexible offer through Agora, the candidate will be able to model their preferred annual distribution of base salary versus equity. The slider within the interactive offer letter helps them understand the impact of this choice.
This article covers:
Here's an example of what a flexible offer looks like:
Note that you are able to put guardrails in place that set the minimum or maximum salary a candidate is allowed to model, depending on your flexible offer policy.
Creating a Flexible Offer
To create a flexible offer in Agora, navigate to the Offers homepage and click "New Offer"
In the Compensation section of the offer creation page, there will be an on/off toggle for Flexible Package. Toggle on to pull up the flexible offer options
Once toggled on, you will enter the total annual Base salary + equity of the offer, as well as the Min base and a Max base. Keep in mind when entering in the number in Base salary and equity, this is the amount equity that vests, per year, based on your company stock price and vesting schedule.
Equity Formulas
There is also an option to use an equity formula. By default salary:equity is shown as a 1:1 ratio. Meaning $1 of salary equates $1 of equity. However companies can use the Equity Formula feature to weight their equity ratio using a variety of functions. For example, in order to encourage employees to take a higher % of equity as part of their total compensation, the company will offer $2 of equity for every $1 of salary trade off
By default, we use the following formula sub(250000,BASE_SALARY)
which calculates a 1:1 ratio between salary and equity. In this case, 250,000 is the sum of both the equity and base salary. You then enter the min and max base salary and based on that we calculate the amount of equity the candidate will receive based on their preferred distribution.
Unweighted Equity Formula Example
In the offer letter slider the equity and base salary will always add up to $250,000 in this scenario since it is a 1:1 ratio.
Weighted Offers
If you would like to create a weighted offer that does not use a 1:1 ratio, you can use a formula to set your preferred distribution. For example, if we use the formula: multiply(sub(250000,BASE_SALARY), 2)
the equity quantity has doubled.
Weighted Equity Formula Example
Once you have created the offer, click on the candidate's unique offer url to preview how the flexible offer is presented to the candidate.
You can review everything and make edits from the offer details page.
Equity Formula Variables and Functions
Below is a list of variables and functions that can be used to create a formula:
Variables
BASE_SALARY - This variable represents the base salary that the user selects. Type: Money
FLEXIBLE - Is this a flexible offer? Type: boolean
TARGET_BONUS_VALUE - This variable represents the target bonus for a user. Type: Money
TARGET_BONUS_PERCENT - This variable represents the target bonus percent. Type: number
TARGET_COMMISSION_VALUE - This variable represents the target commission for a user. Type: Money
TARGET_COMMISSION_PERCENT - This variable represents the target commission percent. Type: number
SHARE_VALUE - This variable represents the value of your shares. Type: Money
Functions
Math
SUM - Add together all given parameters. Can take any number of number or Money parameters. (Example: SUM(BASE_SALARY, 100000) will add 100,000 to base salary)
SUB - Subtract all given parameters. Can take any number of number or Money parameters. (Example: SUB(BASE_SALARY, 100000) will subtract 100,000 from base salary)
DIVIDE - Divide given parameters. Can take two number or Money parameters. (Example: DIVIDE(BASE_SALARY, 100000) will divide base salary by 100,000)
MULTIPLY - Multiple given parameters. Can take two number or Money parameters. (Example: MULTIPLY(BASE_SALARY, 100000) will multiply base salary by 100,000
ROUNDUP - Round a number up to the nearest integer value. (Example: ROUNDUP(BASE_SALARY) , if salary is 100,000.50, then this will return 100,001)
Money
MONEY - Create a Money value. (Example: MONEY(100000, "USD") will create a money value in USD.
AMOUNT - Return just the amount of a money value. (Example: AMOUNT(MONEY(100000,"USD"))will return the number 100000.
CURRENCY - Return just the amount of a money value. (Example: CURRENCY(MONEY(100000,"USD"))will return the string USD.
Conditional
IF - Takes three parameters, with the first being the condition, the second being the result if it's true, and the third being the result if its false. (Example: IF(FLEXIBLE, "Is flexible", "Not flexible").
Strings
CONCAT - concatenate two strings (Example: CONCAT("STRING", "STRING") is equal to "STRINGSTRING"