# Apply different ILM per namespace

**URL:** <https://discuss.elastic.co/t/apply-different-ilm-per-namespace/381523>\
**Category:** Elasticsearch\
**Created:** [September 2, 2025, 2:50pm UTC](https://discuss.elastic.co/t/apply-different-ilm-per-namespace/381523 "2025-09-02T14:50:01Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![djkprojects](https://avatars.discourse-cdn.com/v4/letter/d/d2c977/32.png) [@djkprojects](https://discuss.elastic.co/u/djkprojects)\
**Post date:** [September 2, 2025, 2:50pm UTC](https://discuss.elastic.co/t/apply-different-ilm-per-namespace/381523/1 "2025-09-02T14:50:01Z")

</div>

Hello,

We have many Fleet policies (different data\_stream namespaces) with System integration which are currently using the default _metrics_ ILM.

We now want to tailor each policy and define dedicated ILM for each namespace but reading the documentation and it looks like we cannot easily do that without having to clone every template for system integration i.e.: metrics-system.cpu, metrics-system.core, metrics-system.fsstat, metrics-system.process and so on. With hundreds of namespaces this task would be very daunting so is there any easier way to apply different ILMs per namespace ?

Also, I’m reading this in the ELK docs:

[Scenario 3: Apply an ILM policy with integrations using multiple namespaces | Fleet and Elastic Agent Guide [8.19] | Elastic](https://www.elastic.co/guide/en/fleet/8.19/data-streams-scenario3.html)

and specifically this statement: _“For your changes to continue to be applied in future versions, you must put all custom index settings into a component template. The component template must follow the data stream naming scheme, and end with_ @custom\*“\*

but can’t understand why do we need to create a custom component template and add ILM settings to it? Why can’t we just add these settings to the custom index template we are creating (clone of the built-in template with addition of dedicated ILM settings)?

Thank you
