There are multiple options to calculate the difference between dates.

### 1. getDateDiff

The easiest approach is to use getDateDiff. See this calculation:

getDateDiff('{date2}','{date1}','y')

In this calculation:

- '{date2}' = the variable name of the date field that contains the most recent date
- '{date1}' = the variable name of the date field with the older date
- 'y' = the unit in which the difference is returned, i.e. 'years' in this case

Replace date1 and date2 with your own variable names. Make sure to keep the '{ }' (curly brackets surrounding the variables and the quotation marks). You can change 'y' to any unit you want to use:

- Year: 'y'
- Day: 'd'
- Hour: 'h'
- Minutes: 'm'

### 2. Date difference with Moment objects

You can also create Moment objects and then calculate the difference:

```
var admission = moment('{date1}', 'DD-MM-YYYY');
var discharge = moment('{date2}', 'DD-MM-YYYY');
discharge.diff(admission, 'days');
```

Instead of days you can also use: 'months' or 'years', or 'weeks' depending on what you want to measure. Check this template in the calculation helper.

### 3. Date difference with today

You can also calculate the difference between now (today) and a date of choice, e.g. if you want to know how many days passed between today and the date the patient had their last visit:

var dateofvisit = moment('{visit}', 'DD-MM-YYYY'); var today = moment(); today.diff(dateofvisit, 'days');

In this calculation '{visit}' is the variable name of the date of the visit. Replace this variable with your own variable. Check this template in the calculation helper.

**Note**:* *This calculation will always update when you open the step where it is located in a record, since it calculates the actual moment at the time you are in that step.

### 4. Converting number of days to number of weeks and days

If the number of days is known, it is possible to easily convert the number of days to the number of the weeks with the following template:

var amountWeeks = {amountDays}/7 var remainingDays = {amountDays}%7; remainingDays = remainingDays.toFixed(0) Math.floor(amountWeeks) + " weeks, " + (remainingDays) + " days"

In this calculation {amountDays} is the variable in which the number of days is collected. Test this template using calculation helper.

## Tonya