Back to Blog
Published:
Last Updated:
Fresh Content
Demand & ReplenishmentChapter 11

Requirement, Period, Min/Max or Decoupling point — which coverage code for which item?

9 min read
2,122 words
high priority
Muhammad Mudassir

Muhammad Mudassir

Founder & CEO, Cognilium AI

TL;DR

Microsoft's coverage settings page lists six coverage codes, not four — Manual, Per requirement, Per period, Min/Max, Priority and Decoupling point — and three Microsoft pages disagree on the names. Here is what each one does, which items Microsoft says each fits, and where the recommendation is ours rather than Microsoft's.

Requirement, Period, Min/Max or Decoupling point — which coverage code for which item?

The question has a longer answer than it implies, because Microsoft's coverage settings page lists six coverage codes, not four. And three Microsoft pages give three different lists.

One correction before anything else, because it is the thing people search for and cannot find. DDMRP is the methodology, not a value in the field. The coverage code is Decoupling point. If you have been searching the setup form for "DDMRP", that is why you could not find it.

Start with the list Microsoft actually publishes

The coverage code is the per-item replenishment policy, and Microsoft's coverage settings page names six of them [GA]: Manual, Per requirement, Per period, Min/Max, Priority and Decoupling point. Microsoft calls them "replenishment methods, or lot-sizing methods" and says the system uses them "to determine the batch size for purchased or produced items."

Before the comparison, the naming, because it decides what you go looking for in the interface.

  • [Coverage settings](https://learn.microsoft.com/en-us/dynamics365/supply-chain/master-planning/coverage-settings) — Manual · Per requirement · Per period · Min/Max · Priority · Decoupling point
  • [Replenishment methods and quantity modification](https://learn.microsoft.com/en-us/dynamics365/supply-chain/master-planning/planning-optimization/replenishment-methods-quantity-modification) — Period · Requirement · Min./Max. · Manual
  • [Coverage time fences](https://learn.microsoft.com/en-us/dynamics365/supply-chain/master-planning/planning-optimization/coverage-time-fence) — Period · Requirement · Min/Max · Priority · Decoupling point

The forms Per requirement and Per period appear on the coverage settings page. The procedure page for coverage rules uses the shorter form — Microsoft's task guide for coverage rules says "In the Coverage code field, select an option. Select Requirement for this procedure."

We are not going to adjudicate which of the three is the interface. What the pages support is narrower and more useful: the long forms Per requirement and Per period appear on one page, the short forms appear on the other two, and the procedure page tells you to select Requirement. If you searched the docs for "Per period" and found one page, that is why.

What Microsoft documents each one doing

Behaviour first, because everything else follows from it. Quoted from the two pages above.

  • **Requirement** — What Microsoft documents it does: "the system creates a planned purchase, transfer, or production order for each requirement of the item" — one supply per demand · Prerequisite Microsoft states: None
  • **Period** — What Microsoft documents it does: "combines all the demand for a period into one order… planned for the first day of the period", the next period starting "with the next requirements of the item" · Prerequisite Microsoft states: None
  • **Min/Max** — What Microsoft documents it does: "replenishes inventory up to a certain level when the predicted on-hand quantity is below a threshold. The replenishment quantity is the difference between the maximum level and the predicted on-hand level" · Prerequisite Microsoft states: None
  • **Manual** — What Microsoft documents it does: "the system doesn't suggest purchase, transfer, or production orders for the item. The planner for the item is responsible for creating the required orders" · Prerequisite Microsoft states: None
  • **Priority — What Microsoft documents it does: "replenishes buffers for a product according to its minimum, reorder point, and maximum stock quantities… For replenishing, priority (not date) is considered" · Prerequisite Microsoft states: "available for the Coverage code** field only when Planning Optimization is enabled"
  • **Decoupling point** — What Microsoft documents it does: "identifies a product as a decoupling point (buffer) according to the Demand Driven Material Requirements Planning (DDMRP) methodology" · Prerequisite Microsoft states: DDMRP "requires that you use the Planning Optimization Add-in"

Two of the six are not lot-sizing rules at all. Priority works by urgency rather than requirement date, and Decoupling point triggers when the net flow position falls below the reorder point — which Microsoft calculates as on-hand plus on-order minus qualified demand.

Choosing either of those two is a change of planning method, not a change of batch size.

Which item each one fits — and who is saying so

Microsoft publishes fit guidance for four of the six. For the other two it publishes selection criteria or nothing at all. The middle column below is Microsoft's, quoted. The right-hand column is ours — our reading of what the documented behaviour implies, and it carries no Microsoft authority.

  • **Requirement** — The item Microsoft says it fits: "expensive products that have intermittent demand"; "often used for configurable products or make-to-order scenarios" · The signal we watch for (ours, T2): Move off it when one demand line reliably produces one supply order that a buyer then merges by hand
  • **Period** — The item Microsoft says it fits: "non-predictable inventory draw, season-influenced products, or high-cost products" · The signal we watch for (ours, T2): Move off it when the period length was copied from another item rather than derived from the order cycle you actually run
  • **Min/Max** — The item Microsoft says it fits: "predictable inventory draw, high runners, or less expensive products" · The signal we watch for (ours, T2): Move off it when demand stops being predictable — the threshold is static and will not tell you it has gone stale
  • **Manual** — The item Microsoft says it fits: "products for which you don't want the system to generate planned orders" · The signal we watch for (ours, T2): Review it every quarter. Manual is where phase-outs go to be forgotten
  • **Priority — The item Microsoft says it fits: The priority-based planning page documents no item profile.** It describes the mechanism — urgent demand prioritised over less important demand, larger orders split by priority range · The signal we watch for (ours, T2): We use it where the useful question is "what do I replenish first", not "when is it due" — distribution centres and consumables with many concurrent shortages
  • **Decoupling point — The item Microsoft says it fits: Microsoft publishes six selection criteria, not an item type:** External variability · Inventory leverage and flexibility · Critical operation protection · Customer tolerance time · Sales order visibility horizon · Market potential lead time · The signal we watch for (ours, T2): We only reach for it once customer tolerance time is shorter than cumulative lead time. Below that threshold, buffering solves a problem you do not have

That is the honest state of the evidence. Microsoft owns "what this code does" completely, and owns "which item" for four codes. For Priority and Decoupling point, the fit call in the right-hand column is ours and should be argued with rather than deferred to.

Microsoft's own decoupling example is worth reading before you argue: a pillow with a cumulative lead time of twenty-one days, reduced to a decoupled lead time of five days once the foam billets, the fabric kit and the finished good are buffered, because decoupled items "are always in stock. Therefore, they have a lead time of 0 (zero)" (inventory positioning).

What rides along with the choice

The coverage code is not a single setting. Three consequences travel with it and they surprise people at go-live.

One more that is not a coverage-code setting but behaves like one: Min/Max changes shape when a Multiple is defined on default order settings. Microsoft: "the Min./Max. replenishment method changes its behavior and considers the Multiple value", replenishing to "the first possible value that, together with predicted on-hand level, is below the maximum level" — and, where that sum would fall under the minimum, to "the first value that, together with predicted on-hand, is above the maximum level". Microsoft's own third example lands above the maximum, so the rule has two branches and only one of them is the one people remember.

The three questions we ask, in this order

Ours, not Microsoft's. It fits on one page and it is faster than a matrix.

  1. Does a human have to decide this one? If yes, Manual, and put a review date on it. If no, continue.
  2. Is demand predictable enough to hold a threshold? If yes, Min/Max, and set the Multiple deliberately because it changes the arithmetic. If no, continue.
  3. Is demand intermittent as well as expensive? If yes, Requirement — that is Microsoft's own fit for it. If demand is expensive but arrives in waves you can batch, Period, with a period length taken from your real order cycle rather than copied from another item.

Then the two overrides, which are policy decisions rather than item decisions. If the useful question is "what first" rather than "when", Priority. If customer tolerance time is shorter than cumulative lead time and you can name which of Microsoft's six criteria the position satisfies, Decoupling point.

And one grouping rule from Microsoft that quietly constrains all of it: "items in the same coverage group should have similar lead times." A group holding a two-day fastener and a sixteen-week casting cannot carry one correct negative-days value, whatever coverage code it has.

Where this goes wrong

The common failure is not a wrong code. It is one code for everything, inherited by default: Microsoft's fallback is that if no coverage group is linked to a product, master planning "uses the general coverage group that you specify on the Master planning parameters page." Nobody chose that policy for those items; it was the shape of the setup.

The second failure is treating Decoupling point as an upgrade. It is a different method with a different unit of work, and applying it broadly removes the decoupling that gives it its value.

The third is the one that costs money quietly: a code chosen correctly in 2019 and never revisited. Demand variability moves, lead times move, and neither Min/Max nor Period will tell you the assumption underneath it has expired. The engine will keep executing your old policy perfectly.

Where we would draw the line

We would not set Decoupling point on any item where nobody can name which of Microsoft's six criteria it satisfies. We would not put a population onto Priority without telling the planners their action messages will stop arriving for those items. And we would not run a coverage-code review as a one-off spreadsheet, because that is precisely how the current values got there.

Dynamics 365 manages the replenishment once the code is set. Choosing the code per item, and re-choosing it as demand and lead times move, is the optimization it leaves to you — and it is what Demand & Inventory Optimizer does: it scores every item on live demand variability, value and lead-time behaviour, and writes the coverage policy back into Dynamics behind an approval step.

About Cognilium Cognilium is the AI optimization layer for Dynamics 365 — complementary apps that optimize the pricing, inventory, warehouse and planning decisions your ERP manages but can't optimize. Built on Power Platform, Dataverse and Azure. https://cognilium.ai · https://www.linkedin.com/company/37180269/

Export your item coverage records and count how many distinct coverage codes are actually in use. If the answer is one, book a fifteen-minute call and we will walk the segmentation with you on your own catalogue, live — no deck. https://cognilium.ai

Sources

Sources

Share this article

Muhammad Mudassir

Muhammad Mudassir

Founder & CEO, Cognilium AI

Mudassir Marwat's argument is that ERP systems record decisions they never optimise.

Founder & CEO of Cognilium AI; 37 AI agents in production across four products; 4 production AI products built and operated; three clouds in production (AWSGCPAzure)
Agentic AIRAG → GraphRAG retrievalVoice AIMulti-Agent Orchestration
Next in this series
Demand planning app or master planning — where does the forecast actually live?
Chapter 12 · 9 min
In short

Key takeaways

  • Microsoft's coverage settings page lists more coverage codes than the ones most implementations use, including Priority and Decoupling point alongside Requirement, Period, Min/Max and Manual.
  • Three Microsoft pages list the coverage codes differently. The longer forms Per requirement and Per period appear on one page, while the procedure pages use the shorter values.
  • Priority and Decoupling point are not lot-sizing rules. They change what the engine reasons about — urgency and buffer position instead of the requirement date.
  • Microsoft publishes which items suit Requirement, Period, Min/Max and Manual. For Priority it publishes the mechanism and no item profile; for Decoupling point it publishes selection criteria rather than an item type.
  • The coverage code drags consequences with it: Priority generates no action messages, and only decoupled items are planned by DDMRP while everything else stays on standard MRP.
What goes wrong

Common mistakes to avoid

  • Running the whole catalogue on the coverage group that applies by default, which is a policy nobody chose.
  • Treating the decoupling-point code as a better version of Min/Max and applying it broadly, which removes the decoupling the method depends on.
  • Setting Min/Max without checking the Multiple on default order settings, which changes how the replenishment quantity is calculated.
  • Choosing a code once at go-live. Neither Min/Max nor Period reports that the demand pattern it was sized for has moved.
  • Grouping items by value or by buyer but not by lead time, which makes one correct negative-days value impossible for the group.