Code tool

Library Loan Renewal Calculator

Enter named JSON scenarios: name, offset (±HH:mm), due (YYYY-MM-DD), days, count, optional cap, dayModel (calendar or business), base (previous or renewal), renewalDates, weekdays (0=Sunday through 6=Saturday), holidays (YYYY-MM-DD). Give exactly cap renewalDates if a cap is supplied, otherwise count dates, including potential renewals. Dates must be chronological. In previous mode add days to the current due date; in renewal mode add days to each actual renewal date. The starting date is excluded. Business days skip unselected weekdays and entered holidays; calendar days ignore these exclusions. Count 0 preserves the due date. Limits:20 scenarios,100 renewals per scenario,3660 days per renewal,1000 holidays and200000 walked days total,years1900–2200. Numeric fields start blank.

In-browser processingNo account requiredPrivacy details ↗

Enter named JSON scenarios: name, offset (±HH:mm), due (YYYY-MM-DD), days, count, optional cap, dayModel (calendar or business), base (previous or renewal), renewalDates, weekdays (0=Sunday through 6=Saturday), holidays (YYYY-MM-DD). Give exactly cap renewalDates if a cap is supplied, otherwise count dates, including potential renewals. Dates must be chronological. In previous mode add days to the current due date; in renewal mode add days to each actual renewal date. The starting date is excluded. Business days skip unselected weekdays and entered holidays; calendar days ignore these exclusions. Count 0 preserves the due date. Limits:20 scenarios,100 renewals per scenario,3660 days per renewal,1000 holidays and200000 walked days total,years1900–2200. Numeric fields start blank.

No policy lookup, holds, fines or renewal approval. The maximum date is only the result of your entered cap and dates; without a cap, a policy maximum is undefined. A fixed UTC offset is used, without daylight-saving inference.

Ready to calculate.

A QUICK WALKTHROUGH

How to use this tool

  1. Scenario JSON: Enter named JSON scenarios: name, offset (±HH:mm), due (YYYY-MM-DD), days, count, optional cap, dayModel (calendar or business), base (previous or renewal), renewalDates, weekdays (0=Sunday through 6=Saturday), holidays (YYYY-MM-DD). Give exactly cap renewalDates if a cap is supplied, otherwise count dates, including potential renewals. Dates must be chronological. In previous mode add days to the current due date; in renewal mode add days to each actual renewal date. The starting date is excluded. Business days skip unselected weekdays and entered holidays; calendar days ignore these exclusions. Count 0 preserves the due date. Limits:20 scenarios,100 renewals per scenario,3660 days per renewal,1000 holidays and200000 walked days total,years1900–2200. Numeric fields start blank.
  2. Calculate
  3. Copy full report / Download TXT

Method

No policy lookup, holds, fines or renewal approval. The maximum date is only the result of your entered cap and dates; without a cap, a policy maximum is undefined. A fixed UTC offset is used, without daylight-saving inference.

Arithmetic limits

Enter named JSON scenarios: name, offset (±HH:mm), due (YYYY-MM-DD), days, count, optional cap, dayModel (calendar or business), base (previous or renewal), renewalDates, weekdays (0=Sunday through 6=Saturday), holidays (YYYY-MM-DD). Give exactly cap renewalDates if a cap is supplied, otherwise count dates, including potential renewals. Dates must be chronological. In previous mode add days to the current due date; in renewal mode add days to each actual renewal date. The starting date is excluded. Business days skip unselected weekdays and entered holidays; calendar days ignore these exclusions. Count 0 preserves the due date. Limits:20 scenarios,100 renewals per scenario,3660 days per renewal,1000 holidays and200000 walked days total,years1900–2200. Numeric fields start blank.

GOOD TO KNOW

Common questions

Does this check library policy?

No. Enter the length, cap and calendar rules yourself.

What happens with zero renewals?

The original due date is retained.

Can I export every scenario?

Yes. Copy and TXT contain the same complete successful snapshot.