Setting business hours for WFM forecasts

<p id="docs-hc-snippet" style="display: none;">Forecasting in Zendesk Workforce Management (WFM) predicts future contact volumes and staffing needs by analyzing historical data and applying advanced algorithms. This process ensures you schedule the right number of agents at the right times, helping you optimize resources and consistently meet service goals.</p>
<div class="article-banners">
<div id="docs-wmp-link">
<a href="https://support.zendesk.com/hc/en-us/articles/5411234991258-plan" rel="noopener" target="_blank">What's my plan?</a>
</div>

<div class="article-banner" id="addon_wfm">
<table style="margin-left: 0px; margin-right: auto;">
<tbody>
<tr>
<td>
<strong>Add-on</strong>
</td>
<td>Workforce Management (WFM) or Workforce Engagement Management (WEM)</td>
</tr>
</tbody>
</table>
</div>

</div>
<div id="docs-ai-summary">
<p id="docs-ai-summary-toggle">Verified AI summary <span id="up-triangle">◀</span><span id="down-triangle">▼</span></p>
<p id="docs-ai-summary-content">Set business hours for Workforce Management forecasts to predict future contact volumes and staffing needs accurately. By defining specific hours for each workstream, you ensure the system calculates staffing requirements within your availability window. This helps optimize resources and meet service goals by aligning agent schedules with expected demand. Adjust business hours easily within the forecasting tool to tailor forecasts to your operational needs.</p>
</div>

<div class="body">

<p class="p" dir="ltr">Forecasting in Zendesk Workforce Management (WFM) predicts future contact volumes
and staffing needs by analyzing historical data and applying advanced algorithms. This process
ensures you schedule the right number of agents at the right times, helping you optimize
resources and consistently meet service goals.</p>
<p class="p">When <a class="xref" href="https://support.zendesk.com/hc/en-us/articles/6443407875354#topic_ptn_jpt_xbc" target="_blank">configuring staffing parameters</a>, you can set specific business hours for a workstream that the system uses
to build your staffing forecast.</p>
<p class="p">When set, the email channel sums up volume outside the availability hours and treats it as if
it arrived at the first second of the availability hours, with its SLA starting at that
point.</p>
<p class="p">For chat and voice channels, volume outside of business hours isn’t counted. This means
volume outside the availability hours won’t be considered when calculating staffing
requirements within the availability window. </p>
<p class="p" dir="ltr"><strong class="ph b">To specify business hours for a forecast</strong></p>
<ol class="ol" id="topic-1__ol_zmv_ldl_k3c">
<li class="li"><span class="ph">In <a class="xref" href="https://support.zendesk.com/hc/en-us/articles/4408838272410" target="_blank">Workforce management</a>, click <img class="image" id="topic-1__d8e264" src="https://zen-marketing-documentation.s3.amazonaws.com/docs/en/wfm_forecasts_icon.png" width="16">
<strong class="ph b">Forecasting</strong> in the navigation bar, then select <strong class="ph b">Forecast scenarios</strong>.</span></li>
<li class="li">(Optional) Choose the <strong class="ph b">Day</strong> view.<p class="p">You can apply business hours in any view, but we
recommend using the Day view because the Week and Month views might not clearly show the
impact of applying business hours.</p>
</li>
<li class="li">Select the scenario for which you want to set business hours. </li>
<li class="li">Under Staffing Parameters, click the <strong class="ph b">Availability</strong> toggle to define the business
hours your agents need to work for this workstream. By default, these hours usually match
the <a class="xref" href="https://support.zendesk.com/hc/en-us/articles/6443345205402#topic_wf4_yl4_zzb" target="_blank">operational hours set for your locations</a>.</li>
<li class="li">Select your business hours and click <strong class="ph b">Save</strong>.<p class="p">The forecast recalculates based on the
newly configured business hours.</p>
</li>
</ol>
</div>
<script id="ai-summary-script">
//<![CDATA[
const ai_summary_style = document.createElement('style');
ai_summary_style.innerHTML = `#styled-article-body{padding:0 0 0}#article-body #docs-ai-summary{background-color:#f3f3f3;border:1px solid #d3d3d3;padding:10px 10px 6px;margin-bottom:16px}#article-body #docs-ai-summary #docs-ai-summary-toggle{font-size:.9em;font-weight:700;margin-bottom:4px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}#article-body #docs-ai-summary #docs-ai-summary-toggle #up-triangle{margin-left:auto;padding-right:10px;display:none}#article-body #docs-ai-summary #docs-ai-summary-toggle #down-triangle{margin-left:auto;padding-right:10px}#article-body #docs-ai-summary #docs-ai-summary-content{font-size:.9em;padding-left:25px;padding-right:25px;margin-bottom:12px}`;
document.head.appendChild(ai_summary_style);

const toggleAISummary = () => {
const summary = document.getElementById("docs-ai-summary-content");
const upTriangle = document.getElementById("up-triangle");
const downTriangle = document.getElementById("down-triangle");
if (summary.style.display === "none") {
summary.style.display = "block";
upTriangle.style.display = "none";
downTriangle.style.display = "inline";
} else {
summary.style.display = "none";
upTriangle.style.display = "inline";
downTriangle.style.display = "none";
}
};

document.getElementById("docs-ai-summary-toggle").addEventListener("click", toggleAISummary);
//]]>
</script>