# Renewal reminders 90, 60 and 30 days before an end date

Source: [https://docs.virtosoftware.com/docs/alerts-and-reminders-by-virto/virto-alerts-use-cases/contract-renewal-reminders/](https://docs.virtosoftware.com/docs/alerts-and-reminders-by-virto/virto-alerts-use-cases/contract-renewal-reminders/)
Product: Virto Alerts & Reminders App
Updated: 2026-10-23


We keep contracts in a SharePoint list: the counterparty, the owner, the end date, auto-renewal and a status. Each owner should hear about their own contract 90, 60 and 30 days before it ends, unless it is already marked as not renewing, and whoever answers for the register should get one table a week of everything ending soon. The same setup works for certificates, licences, permits, insurance policies and warranties. We will use the [Virto Alerts & Reminder App](https://www.virtosoftware.com/microsoft-365/virto-alerts-and-reminders-app/).

[Open the interactive demo](https://app.storylane.io/demo/350um9xbi6sk)

**Interactive demo walkthrough**
1. A reminder on every end date — Contract end dates in a SharePoint list: reminders to each owner and one weekly table for the register.
2. The contract register is an ordinary SharePoint list: the counterparty, the owner, the end date, auto-renewal and the status of each contract.
3. The reminder counts from the list's own End date column: 30 days before, one email per contract, and none for contracts marked Not renewing.
4. The email is written once with field tags: the contract, the counterparty and the end date, then its type, annual value and auto-renewal from the same item.
5. Three reminders, 30, 60 and 90 days before the end date, each go to the Owner named in the item. A fourth rule sends one summary a week.
6. Once a week, whoever answers for the register gets one table: every contract ending in the next 90 days, each name linked to its item.
7. Put a reminder on every end date in your list — Virto Alerts & Reminder App runs in your Microsoft 365 tenant; the contracts stay in the SharePoint list.

## The list

A **Contracts** list with the columns **Contract** (title), **Counterparty**, **Owner** (a person), **End date**, **Auto-renewal**, **Annual value** and **Status**, where one of the status values is **Not renewing**.

## Step 1. The 30-day reminder

On the **My alerts** page, click **Add reminder** and choose the **Contracts** list. Then fill in the blocks of the reminder, as described in [How to create a reminder](https://docs.virtosoftware.com/docs/alerts-and-reminders-by-virto/configuration-and-usage/creating-a-reminder/index.md):

- **Recipients**: the **Owner** column, so one rule writes to every owner on the list. Add a group or a supervisor in copy if needed.
- **Message view**: a subject such as "Contract ends in 30 days" and a body with the field values of the item: the contract as a link, the counterparty, the end date, the type, the annual value and auto-renewal.
- **Options**: **Use condition(s)** with **Status** not equal **Not renewing**, so settled contracts are left out. Under **When To Send Alerts**, choose **Send on date depending on a field value**, field **End date**, **Before** 30 days, tick **Send separate e-mail for each item** and set the hour.

A new reminder does not send on the day it is created, so set it up at least a day before the first end date it should catch.

## Step 2. The 60- and 90-day reminders

Repeat Step 1 with **Before** 60 days and **Before** 90 days. To save typing, save the first reminder to a file with **Export** at the bottom of the edit window and load it with **Import** when you create the next one; then change the number of days and the title.

## Step 3. The weekly table

Create a fourth reminder on the same list for whoever answers for the register:

- **Options**: **Use condition(s)** with **End date** less than **[Today]+90**, **End date** greater than **[Today]+0** and **Status** not equal **Not renewing**. The values are counted from the day the email is sent, so next week's table drops the contracts that have ended and picks up the ones that have come within 90 days. See [Dates counted from today](https://docs.virtosoftware.com/docs/alerts-and-reminders-by-virto/configuration-and-usage/creating-an-alert/options/index.md#dates-counted-from-today).
- **When To Send Alerts**: **Send a weekly summary**, Monday, at the hour you choose.
- **Message view**: one table with a header row (Contract, Counterparty, Ends, Owner, Auto-renewal) and a row of field values under it. See [How to merge summary alerts in one alert with a table](https://docs.virtosoftware.com/docs/alerts-and-reminders-by-virto/configuration-and-usage/special-options-for-an-alert-or-reminder-message/how-to-merge-summary-alerts-in-one-alert-with-a-table/index.md).

Eight contracts then arrive as eight rows of one email, each name linked to its item. The rows follow the order of the list, not the end date.

## When something else fits better

One person who wants a reminder about one item can use the built-in reminder in Microsoft Lists, which emails the person who set it. Drafting, approvals, signatures and versions of a contract belong in a contract lifecycle management system: the app reminds people about dates kept in a list.

