Performance Improvement Plan (PIP) Timeline Calculator

ANALife Services AuthorityNational Calculator Authority›Performance Improvement Plan (PIP) Timeline Calculator

.calc-container { max-width: 640px; margin: 2rem 0; padding: 1.5rem; background: #fff; border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); font-family: system-ui, -apple-system, sans-serif; } .calc-container h3 { font-family: Georgia, serif; font-size: 1.15rem; color: #1a1a1a; margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-row { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; flex-wrap: wrap; } .calc-row label { min-width: 160px; font-size: 0.9rem; color: #333; font-weight: 500; } .calc-row input[type="number"], .calc-row select { flex: 1; min-width: 120px; max-width: 200px; padding: 0.5rem 0.6rem; border: 1px solid #ccc; border-radius: 4px; font-size: 0.9rem; font-family: system-ui, sans-serif; color: #1a1a1a; background: #fafaf8; } .calc-row input:focus, .calc-row select:focus { outline: none; border-color: var(--ac, #3d5a80); box-shadow: 0 0 0 2px rgba(26,74,138,0.12); } .calc-row .unit { font-size: 0.82rem; color: #888; min-width: 30px; } .calc-btn { display: inline-block; margin-top: 0.5rem; padding: 0.55rem 1.5rem; background: var(--ac, #3d5a80); color: #fff; border: none; border-radius: 4px; font-size: 0.9rem; font-weight: 600; cursor: pointer; font-family: system-ui, sans-serif; } .calc-btn:hover { opacity: 0.9; } .calc-result { margin-top: 1.25rem; padding: 1rem 1.25rem; background: #f0f6fc; border-left: 3px solid var(--ac, #3d5a80); border-radius: 0 6px 6px 0; display: none; } .calc-result.visible { display: block; } .calc-result-label { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; color: #666; margin-bottom: 0.25rem; } .calc-result-value { font-size: 1.6rem; font-weight: 700; color: var(--ac, #3d5a80); } .calc-result-detail { font-size: 0.85rem; color: #555; margin-top: 0.5rem; line-height: 1.5; } .calc-note { margin-top: 1rem; font-size: 0.8rem; color: #888; font-style: italic; } .calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-top: 0.75rem; } .calc-grid-item { padding: 0.6rem 0.8rem; background: #f8f9fa; border-radius: 4px; border: 1px solid #eee; } .calc-grid-item .label { font-size: 0.75rem; color: #888; text-transform: uppercase; letter-spacing: 0.04em; } .calc-grid-item .value { font-size: 1.1rem; font-weight: 600; color: #1a1a1a; } @media (max-width: 720px) { .calc-row { flex-direction: column; align-items: flex-start; gap: 0.3rem; } .calc-row label { min-width: auto; } .calc-row input[type="number"], .calc-row select { max-width: 100%; width: 100%; } .calc-grid { grid-template-columns: 1fr; } } .calc-chart { margin: 1rem 0; text-align: center; } .calc-chart svg { max-width: 100%; height: auto; } .calc-chart-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6rem 1.2rem; margin-top: 0.6rem; font-size: 0.8rem; color: #555; } .calc-chart-legend span { display: inline-flex; align-items: center; gap: 0.3rem; } .calc-chart-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 2px; font-style: normal; } .calc-related { max-width: 640px; margin: 2rem 0 1rem; padding: 1.25rem 1.5rem; background: #f8f9fa; border: 1px solid #e8e8e8; border-radius: 8px; } .calc-related h3 { font-family: Georgia, serif; font-size: 1rem; color: #1a1a1a; margin: 0 0 0.75rem; padding-bottom: 0.4rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-related-list { list-style: none; padding: 0; margin: 0 0 0.75rem; display: grid; grid-template-columns: 1fr 1fr; gap: 0.4rem 1.5rem; } .calc-related-list li a { font-size: 0.88rem; color: var(--ac, #3d5a80); text-decoration: none; } .calc-related-list li a:hover { text-decoration: underline; } .calc-browse-all { margin: 0.5rem 0 0; font-size: 0.9rem; font-weight: 600; } .calc-browse-all a { color: var(--ac, #3d5a80); text-decoration: none; } .calc-browse-all a:hover { text-decoration: underline; } @media (max-width: 720px) { .calc-related-list { grid-template-columns: 1fr; } }

Performance Improvement Plan (PIP) Timeline Calculator

Calculate the total duration, key milestones, check-in dates, and final review date for a Performance Improvement Plan (PIP) based on your start date, duration, and review frequency.

PIP Start Date

PIP Duration (weeks)

Typical PIPs run 30 days (~4 wks), 60 days (~9 wks), or 90 days (~13 wks).

Check-in Frequency

Weekly Bi-Weekly (every 2 weeks) Monthly (every 4 weeks)

Exclude Weekends from Milestone Dates?

Yes – move to next Monday if on weekend No – keep exact calendar date

Final Decision Notice Period (business days after end date)

Number of business days after the PIP end date to issue the final decision.

Calculate PIP Timeline

function perCalc() { // --- Grab inputs --- const startVal = document.getElementById('per-start-date').value; const durationWeeks = parseFloat(document.getElementById('per-duration-weeks').value); const checkinFreq = parseInt(document.getElementById('per-checkin-freq').value); const excludeWkends = document.getElementById('per-exclude-weekends').value; const noticeDays = parseInt(document.getElementById('per-notice-days').value); const resultDiv = document.getElementById('per-result');

// --- Validation --- const errors = []; if (!startVal) errors.push("Please select a PIP Start Date."); if (isNaN(durationWeeks) || durationWeeks 52) errors.push("PIP Duration must be between 1 and 52 weeks."); if (isNaN(noticeDays) || noticeDays 30) errors.push("Notice period must be between 0 and 30 business days.");

if (errors.length > 0) { resultDiv.style.display = 'block'; resultDiv.innerHTML = '' + errors.map(e => '').join('') + ''; return; }

// --- Helper: add calendar days to a date --- function addDays(date, days) { const d = new Date(date); d.setDate(d.getDate() + days); return d; }

// --- Helper: add business days --- function addBusinessDays(date, bdays) { let d = new Date(date); let added = 0; while (added { checkinRows += 'Check-in #' + (idx+1) + ' (Week ' + ci.week + ')' + fmt(ci.date) + ''; });

resultDiv.style.display = 'block'; resultDiv.innerHTML = ` ### 📋 PIP Timeline Summary

MilestoneDate

PIP Start Date${fmt(startDate)} 25% Progress Mark${fmt(q1Adj)} Midpoint Review (50%)${fmt(midAdj)} 75% Progress Mark${fmt(q3Adj)} ${checkinRows} PIP End Date${fmt(endDate)} Final Decision Date (+${noticeDays} biz days)${fmt(decisionDate)}

### 📊 Key Metrics

Total Calendar Days${totalDays} days Total Business Days${totalBizDays} days Total Weeks${durationWeeks} weeks Number of Scheduled Check-ins${checkins.length} Check-in FrequencyEvery ${checkinFreq === 1 ? 'week' : checkinFreq === 2 ? '2 weeks' : '4 weeks'} Weekend Adjustment Applied${excludeWkends === 'yes' ? 'Yes' : 'No'}

Note: The PIP end date is ${fmt(endDate)}. The final decision (termination, extension, or successful completion) should be communicated by ${fmt(decisionDate)} (${noticeDays} business day${noticeDays !== 1 ? 's' : ''} after end date).

`; }

#### Formulas Used

PIP End Date: End Date = Start Date + (Duration in Weeks × 7 calendar days)

Midpoint Review Date: Midpoint = Start Date + ⌊(Total Days ÷ 2)⌋

Quarter Marks: Q1 = Start Date + ⌊Total Days × 0.25⌋ Q3 = Start Date + ⌊Total Days × 0.75⌋

Check-in Dates: Check-inn = Start Date + (n × Check-in Frequency in Weeks × 7 days), for all n where the resulting date is before the End Date.

Business Days in PIP: Count all weekdays (Mon–Fri) between Start Date (exclusive) and End Date (inclusive).

Final Decision Date: Decision Date = End Date + N business days (skipping Saturdays and Sundays)

Weekend Adjustment: If a milestone falls on Saturday → move to the following Monday (+2 days). If a milestone falls on Sunday → move to the following Monday (+1 day).

#### Assumptions & References

More Calculators

Read Next

Building Vs Contents Coverage Allocator ANA › Life Services Authority › National Calculator Authority › Building vs Contents Coverage Allocator .calc-container {...

Study Time Planner Authority Network America › Life Services Authority › National Calculator Authority .calc-container { max-width: 640px;...

References