Offer exceptions using a custom job field

Permissions: Site Admin who can create and override default approval flows, and Job Admin who can manage custom fields and can edit offer approvals

Product tier: Available for Advanced and Expert subscription tiers

Offer exceptions give your team the ability to set allowed ranges for salary, stock options, or any other numeric custom fields, and then require additional approvals if an offer is created outside the allowed range.

Example – Imagine you can hire as many sales executives as you want, but their salary must fall between $50,000–$60,000. If you want to offer a salary of $65,000 to one candidate, Greenhouse Recruiting can trigger additional approvers — maybe the CFO and CEO — to sign off on the offer before you can extend it.

Offer exceptions can be configured so the offer is checked against a custom job field, or so the offer is checked against a custom opening field. To learn more about tracking exceptions against a custom opening field, click here.

Create a custom job field

To begin setting up offer exceptions, click the Configure icon Configure icon on your navigation bar, then select Custom Options on the left.

Screenshot of Configure > Custom Options

Click Jobs under the Company Custom Fields section.

Screenshot of Custom Options > Jobs

Click Add Field.

Screenshot of Custom Options > Jobs > Add custom job field

Give your new custom job field a name. This field will appear on the Job Info tab for each of your jobs and will be used to set the range for the salary, stock options (and others) allowed to be granted in a candidate offer on that job. Once you have given your custom job field a name, use the Field Type dropdown to choose either Currency range or Number range, depending on which is more relevant for your use case.

Note: Offer exceptions work only if your custom job field has a field type of Currency range or Number range. If your field is created as any other type, you must delete the custom job field and create a new custom job field set to one of the appropriate types.

Screenshot of custom job field created for offer exceptions

We also recommend checking the boxes marked Required and Changes to this field require reapproval to ensure the values entered cannot be changed by users wishing to avoid additional approvals.

Screenshot of a custom job field configured for offer exceptions

When finished, click Save.

When a user creates a new job, they'll be required to enter a salary range (or other numeric range) to be checked when a new offer is created for a candidate.

Note: If you leave the left box blank, the minimum value will be 0, and if you leave the right blank, there will be no maximum. Please check with your Finance department before offering a salary of infinity dollars.

Screenshot of an example salary range

This new custom job field also appears for existing jobs, but won't contain values unless a user navigates to the existing job's Approvals tab to edit the job and add values to the field.

Screenshot of an example custom job field on a job

Create a custom offer field

To create a corresponding custom offer field, select the Configure icon Configure icon on your navigation bar, then click Custom Options on the left.

Screenshot of Configure > Custom Options

Click Offers under the Company Custom Fields section.

Screenshot of Custom Options > Offers

Click Add Field.

Screenshot of Configure > Custom Options > Offers > Add custom offer field

Give your custom offer field a name. This field will appear in the Create Offer box when drafting an offer for a candidate. Once you've given your custom offer field a name, click the Track this field for exceptions link.

Screenshot of track this field for exceptions

A Select the range field dropdown appears. Click the dropdown to select the custom job field created in the previous step.

Screenshot of track this field for offer exceptions

Note: If the custom job field you created doesn't appear in the dropdown, the custom job field was likely created with a type other than Currency range or Number range. To associate the custom offer field with the custom job field, you must delete the previously created custom job field and re-create it with an appropriate type because a custom field's type cannot be changed once the field is created.

Finish configuring your new custom offer field as desired, then click Save when finished.

Configure offer exception approvals on a job

Next, you'll configure the approvals chain to be triggered if a user creates an offer that falls outside the allowed range.

To configure offer exception approval on a job, navigate to an existing job, then click the Approvals tab.

Confirm the custom job field has a range entered. If no range is entered yet, click Edit Job & Openings, then enter a range in the field.

Screenshot of salary range exception on an offer

Locate the Offer Approvals section at the bottom right of the page, and click the Edit icon Edit-icon.png.

Screenshot of edit offer approvals on a job

Click Add Approval Step.

Add the approvers who should be required when an out-of-range offer is created. Check the box for Required ONLY if offer fields are out of range. This ensures this step of the approvals chain is activated only if the offer is out of range.

When finished, click Save.

Screenshot of required only if offer fields are out of range

Click Done to save your changes.

Screenshot of Done button on offer approval edit

Use offer exceptions

When creating a candidate offer, any fields outside the approved range are highlighted in yellow to draw attention to the range violation.

Screenshot of an offer out of approved range

If any fields are outside the approved range, the offer exception step of the offer approvals chain is activated. When the user creating the offer requests approval, Greenhouse Recruiting triggers the job's standard offer approvals chain and includes the offer exception step.

The users required to issue offer exception offer approvals receive an Offer Approval Requested email, which indicates the range violation.

Use existing custom job field and custom offer field for offer exceptions

Your team might have an existing custom job field and/or custom offer field you wish to begin using for offer exceptions. In many cases, it isn't possible to use these existing fields, and your team instead must delete the existing fields, then create new custom fields using the steps outlined in this article. Please see below for more details.

Existing custom job field

A previously configured custom job field can be used for offer exceptions only if the field was created with a type of Currency range or Number range. Once a custom field is created, its type cannot be changed. This means if the existing custom job field has any type other than Currency range or Number range, the custom job field cannot be altered to function as part of an offer exception.

If you have an existing custom job field with a type other than Currency range or Number range that you wish to use for offer exceptions, we recommend the following steps:

  1. Delete the existing custom job field. If a custom job field is deleted, the field still appears for existing jobs that have data entered in that field.
    Example: If you delete a custom job field called Salary, the field won't appear on jobs created from that time forward, but will appear on previously created jobs where a salary value was entered in the field. If some previously created jobs did not have data entered in the Salary field, that field will no longer appear on those particular jobs once the custom job field is deleted.
    Before deleting the custom job field, we recommend ensuring the field is not marked Required. Making the field not required allows users to delete data from this field on previously created jobs and save the change, if appropriate.
  2. Create a new custom job field to replace the deleted field. The new custom job field can use the same name as the deleted field. Be sure to give the new field a type of Currency range or Number range. The new custom job field will appear on both previously created jobs and jobs created from that time forward.
  3. Create a corresponding custom offer field, and link the new custom job field to the new custom offer field as outlined above.

Existing custom offer field

An existing custom offer field cannot be used to configure offer exceptions. Once a custom offer field is created, the option to track the field for exceptions is no longer available. If you have an existing custom offer field you wish to use for Offer Exceptions, we recommend the following steps:

  1. Delete the existing custom offer field. If a custom offer field is deleted, it won't be removed from previously created offers that have data entered in that field. Before deleting the custom offer field, we recommend ensuring the field is not marked as required. Making the field not required allows users to delete data from this field on previously created offers and save the change, if appropriate.
  2. Create a new custom offer field to replace the deleted field. Be sure to configure the new custom offer field to track against an exception when you create the field. If this option is not selected during creation, the new field cannot be used as part of offer exceptions.