diff --git a/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.html b/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.html
index c319836e14be9bee1d1314df5f293f09173a12b0..2ac0364135e1ca213ade83de5bb3874c4729c82a 100644
--- a/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.html
+++ b/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.html
@@ -5,6 +5,6 @@
 }
 @if (configurationStateResource.resource | hasLink: configurationLinkRel.AGGREGATION_MAPPINGS) {
   <ods-nav-item data-test-id="statistik-navigation" caption="Statistik" [path]="'/' + ROUTES.AGGREGATION_MAPPING">
-    <ods-statistic-icon icon />
+    <ods-icon icon name="statistic" fill="text" />
   </ods-nav-item>
 }
diff --git a/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.spec.ts b/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.spec.ts
index 6fe7f6ec6a78e51ef53b8f5b3e8c5f4fc7d129b1..83dd6d65dbc4295c2027f703d6a90f765a1bd4e9 100644
--- a/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.spec.ts
+++ b/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.spec.ts
@@ -2,7 +2,7 @@ import { ConfigurationLinkRel } from '@admin-client/configuration-shared';
 import { createEmptyStateResource, createStateResource, HasLinkPipe } from '@alfa-client/tech-shared';
 import { existsAsHtmlElement, notExistsAsHtmlElement } from '@alfa-client/test-utils';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { MailboxIconComponent, NavItemComponent } from '@ods/system';
+import { IconComponent, MailboxIconComponent, NavItemComponent } from '@ods/system';
 import { createConfigurationResource } from 'libs/admin/configuration-shared/test/configuration';
 import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
 import { MockComponent } from 'ng-mocks';
@@ -18,7 +18,7 @@ describe('MenuComponent', () => {
   beforeEach(async () => {
     await TestBed.configureTestingModule({
       imports: [MenuComponent, HasLinkPipe],
-      declarations: [MockComponent(NavItemComponent), MockComponent(MailboxIconComponent)],
+      declarations: [MockComponent(NavItemComponent), MockComponent(MailboxIconComponent), MockComponent(IconComponent)],
     }).compileComponents();
 
     fixture = TestBed.createComponent(MenuComponent);
diff --git a/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.ts b/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.ts
index c0845f3f13cf83a993f7cbe48f8021d42a2097e2..4a0299181569b996c8c557c85c3f4f5d6b309170 100644
--- a/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.ts
+++ b/alfa-client/libs/admin/configuration/src/lib/menu-container/menu/menu.component.ts
@@ -3,12 +3,12 @@ import { ROUTES } from '@admin-client/shared';
 import { HasLinkPipe, StateResource } from '@alfa-client/tech-shared';
 import { CommonModule } from '@angular/common';
 import { Component, Input } from '@angular/core';
-import { MailboxIconComponent, NavItemComponent, StatisticIconComponent } from '@ods/system';
+import { IconComponent, MailboxIconComponent, NavItemComponent } from '@ods/system';
 
 @Component({
   selector: 'admin-menu',
   standalone: true,
-  imports: [CommonModule, NavItemComponent, MailboxIconComponent, StatisticIconComponent, HasLinkPipe],
+  imports: [CommonModule, NavItemComponent, MailboxIconComponent, IconComponent, HasLinkPipe],
   templateUrl: './menu.component.html',
 })
 export class MenuComponent {
diff --git a/alfa-client/libs/design-system/src/index.ts b/alfa-client/libs/design-system/src/index.ts
index 462a77a07d041b8a98fb7daca28560fc46ae5906..7bc2a45f895d443ad456c7823b1b792ff439be83 100644
--- a/alfa-client/libs/design-system/src/index.ts
+++ b/alfa-client/libs/design-system/src/index.ts
@@ -53,8 +53,6 @@ export * from './lib/icons/ozg-logo-icon/ozg-logo-icon.component';
 export * from './lib/icons/person-icon/person-icon.component';
 export * from './lib/icons/public-administration-icon/public-administration-icon.component';
 export * from './lib/icons/spinner-icon/spinner-icon.component';
-export * from './lib/icons/statistic-icon/statistic-icon.component';
-export * from './lib/icons/undo-icon/undo-icon.component';
 export * from './lib/icons/undo-request-vorgang-deletion-icon/undo-request-vorgang-deletion-icon.component';
 export * from './lib/icons/update-icon/update-icon.component';
 export * from './lib/icons/user-icon/user-icon.component';
diff --git a/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.component.spec.ts
deleted file mode 100644
index 9f6bddf811de36b7005098584a3c436010fc9bb3..0000000000000000000000000000000000000000
--- a/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.component.spec.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { StatisticIconComponent } from './statistic-icon.component';
-
-describe('StatisticIconComponent', () => {
-  let component: StatisticIconComponent;
-  let fixture: ComponentFixture<StatisticIconComponent>;
-
-  beforeEach(async () => {
-    await TestBed.configureTestingModule({
-      imports: [StatisticIconComponent],
-    }).compileComponents();
-
-    fixture = TestBed.createComponent(StatisticIconComponent);
-    component = fixture.componentInstance;
-    fixture.detectChanges();
-  });
-
-  it('should create', () => {
-    expect(component).toBeTruthy();
-  });
-});
diff --git a/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.component.ts
deleted file mode 100644
index df5d2b5bdcba9549b60cea9ee4b04d7e8bc4d8c4..0000000000000000000000000000000000000000
--- a/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.component.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import { NgClass } from '@angular/common';
-import { Component, Input } from '@angular/core';
-import { twMerge } from 'tailwind-merge';
-import { iconVariants, IconVariants } from '../iconVariants';
-
-@Component({
-  selector: 'ods-statistic-icon',
-  standalone: true,
-  imports: [NgClass],
-  template: `<svg
-    viewBox="0 0 24 24"
-    xmlns="http://www.w3.org/2000/svg"
-    [ngClass]="twMerge(iconVariants({ size }), 'fill-black', class)"
-  >
-    <path d="M2 21V19H22V21H2ZM3 18V11H6V18H3ZM8 18V6H11V18H8ZM13 18V9H16V18H13ZM18 18V3H21V18H18Z" />
-  </svg>`,
-})
-export class StatisticIconComponent {
-  @Input() size: IconVariants['size'] = 'medium';
-  @Input() class: string = undefined;
-
-  readonly iconVariants = iconVariants;
-  readonly twMerge = twMerge;
-}
diff --git a/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.stories.ts
deleted file mode 100644
index 272f6fe850c3862c1a7c8212bf2807369a41064b..0000000000000000000000000000000000000000
--- a/alfa-client/libs/design-system/src/lib/icons/statistic-icon/statistic-icon.stories.ts
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
- * Ministerpräsidenten des Landes Schleswig-Holstein
- * Staatskanzlei
- * Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
- *
- * Lizenziert unter der EUPL, Version 1.2 oder - sobald
- * diese von der Europäischen Kommission genehmigt wurden -
- * Folgeversionen der EUPL ("Lizenz");
- * Sie dürfen dieses Werk ausschließlich gemäß
- * dieser Lizenz nutzen.
- * Eine Kopie der Lizenz finden Sie hier:
- *
- * https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
- *
- * Sofern nicht durch anwendbare Rechtsvorschriften
- * gefordert oder in schriftlicher Form vereinbart, wird
- * die unter der Lizenz verbreitete Software "so wie sie
- * ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
- * ausdrücklich oder stillschweigend - verbreitet.
- * Die sprachspezifischen Genehmigungen und Beschränkungen
- * unter der Lizenz sind dem Lizenztext zu entnehmen.
- */
-import type { Meta, StoryObj } from '@storybook/angular';
-
-import { StatisticIconComponent } from './statistic-icon.component';
-
-const meta: Meta<StatisticIconComponent> = {
-  title: 'Icons/Statistic icon',
-  component: StatisticIconComponent,
-  excludeStories: /.*Data$/,
-  tags: ['autodocs'],
-};
-
-export default meta;
-type Story = StoryObj<StatisticIconComponent>;
-
-export const Default: Story = {
-  args: { size: 'large' },
-  argTypes: {
-    size: {
-      control: 'select',
-      options: ['small', 'medium', 'large', 'extra-large', 'full'],
-      description: 'Size of icon. Property "full" means 100%',
-      table: {
-        defaultValue: { summary: 'medium' },
-      },
-    },
-  },
-};
diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.spec.ts b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.spec.ts
deleted file mode 100644
index fda1f7e237ce8667e4f4194fc58f85384d3bb985..0000000000000000000000000000000000000000
--- a/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.spec.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { UndoIconComponent } from './undo-icon.component';
-
-describe('UndoIconComponent', () => {
-  let component: UndoIconComponent;
-  let fixture: ComponentFixture<UndoIconComponent>;
-
-  beforeEach(async () => {
-    await TestBed.configureTestingModule({
-      imports: [UndoIconComponent],
-    }).compileComponents();
-
-    fixture = TestBed.createComponent(UndoIconComponent);
-    component = fixture.componentInstance;
-    fixture.detectChanges();
-  });
-
-  it('should create', () => {
-    expect(component).toBeTruthy();
-  });
-});
diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.ts b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.ts
deleted file mode 100644
index 7b36f81af4fbc7989233efacfd1c4df124af94dc..0000000000000000000000000000000000000000
--- a/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.component.ts
+++ /dev/null
@@ -1,27 +0,0 @@
-import { CommonModule } from '@angular/common';
-import { Component, Input } from '@angular/core';
-import { twMerge } from 'tailwind-merge';
-import { iconVariants, IconVariants } from '../iconVariants';
-
-@Component({
-  selector: 'ods-undo-icon',
-  standalone: true,
-  imports: [CommonModule],
-  template: `<svg
-    viewBox="0 0 24 24"
-    xmlns="http://www.w3.org/2000/svg"
-    [ngClass]="[twMerge(iconVariants({ size }), 'fill-primary', class)]"
-    aria-hidden="true"
-  >
-    <path
-      d="M13.25 8C10.6 8 8.2 8.99 6.35 10.6L2.75 7V16H11.75L8.13 12.38C9.52 11.22 11.29 10.5 13.25 10.5C16.79 10.5 19.8 12.81 20.85 16L23.22 15.22C21.83 11.03 17.9 8 13.25 8Z"
-    />
-  </svg>`,
-})
-export class UndoIconComponent {
-  @Input() size: IconVariants['size'] = 'medium';
-  @Input() class: string = '';
-
-  readonly iconVariants = iconVariants;
-  readonly twMerge = twMerge;
-}
diff --git a/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.stories.ts b/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.stories.ts
deleted file mode 100644
index 0d2d78f8148e451628802851ce122c012e99c9b2..0000000000000000000000000000000000000000
--- a/alfa-client/libs/design-system/src/lib/icons/undo-icon/undo-icon.stories.ts
+++ /dev/null
@@ -1,27 +0,0 @@
-import type { Meta, StoryObj } from '@storybook/angular';
-
-import { UndoIconComponent } from './undo-icon.component';
-
-const meta: Meta<UndoIconComponent> = {
-  title: 'Icons/Undo icon',
-  component: UndoIconComponent,
-  excludeStories: /.*Data$/,
-  tags: ['autodocs'],
-};
-
-export default meta;
-type Story = StoryObj<UndoIconComponent>;
-
-export const Default: Story = {
-  args: { size: 'large' },
-  argTypes: {
-    size: {
-      control: 'select',
-      options: ['small', 'medium', 'large', 'extra-large', 'full'],
-      description: 'Size of icon. Property "full" means 100%',
-      table: {
-        defaultValue: { summary: 'medium' },
-      },
-    },
-  },
-};
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html
index 803643eefddd44bce0fa6ba4e43ce9bdd956a8c7..2406364334dbdf8f98ee92b72fb6eeefa8c9620f 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.html
@@ -34,7 +34,7 @@
       size="fit"
       (clickEmitter)="wiedereroeffnen()"
     >
-      <ods-undo-icon icon class="fill-text" />
+      <ods-icon icon name="undo" fill="text" />
     </ods-button-with-spinner>
   } @else {
     <ods-button-with-spinner
@@ -44,7 +44,7 @@
       variant="outline"
       (clickEmitter)="wiedereroeffnen()"
     >
-      <ods-undo-icon icon />
+      <ods-icon icon name="undo" />
     </ods-button-with-spinner>
   }
 }
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts
index 9ab9c207ac2130f261185304e3cb862dd10794b2..b13e96c87e4fe534f569e5f676079812b5bf8f85 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/wiedereroeffnen-button/wiedereroeffnen-button.component.spec.ts
@@ -26,7 +26,7 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { TooltipDirective, UndoIconComponent } from '@ods/system';
+import { IconComponent, TooltipDirective } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
@@ -51,7 +51,7 @@ describe('WiedereroeffnenButtonComponent', () => {
         WiedereroeffnenButtonComponent,
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
-        MockComponent(UndoIconComponent),
+        MockComponent(IconComponent),
         MockDirective(TooltipDirective),
       ],
       providers: [
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html
index 8ee807e66333b167a0e6313fba94bfe10cd10265..68f51ee99ba0e47eefab1b9c3ab0afb414ff2f0a 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.html
@@ -34,7 +34,7 @@
       tooltipAriaType="aria-labelledby"
       (clickEmitter)="zurueckholen()"
     >
-      <ods-undo-icon icon class="fill-text" />
+      <ods-icon icon name="undo" fill="text" />
     </ods-button-with-spinner>
   } @else {
     <ods-button-with-spinner
@@ -44,7 +44,7 @@
       variant="outline"
       (clickEmitter)="zurueckholen()"
     >
-      <ods-undo-icon icon />
+      <ods-icon icon name="undo" />
     </ods-button-with-spinner>
   }
 }
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts
index 80f81d1d5d5642d69dd03aaee0ca35aa9b3467c8..c8f83122cd50aafb8b13b9960806dd686bc11ae0 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckholen-button/zurueckholen-button.component.spec.ts
@@ -26,7 +26,7 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { TooltipDirective, UndoIconComponent } from '@ods/system';
+import { IconComponent, TooltipDirective } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
@@ -52,7 +52,7 @@ describe('ZurueckholenButtonComponent', () => {
         ZurueckholenButtonComponent,
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
-        MockComponent(UndoIconComponent),
+        MockComponent(IconComponent),
         MockDirective(TooltipDirective),
       ],
       providers: [
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html
index d87c88a1a703eef1b5067af8de775f835f4b089b..cdd1d66e27203c968cd88fc4d18d9ee212de6196 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.html
@@ -35,7 +35,7 @@
       size="fit"
       (clickEmitter)="zurueckstellen()"
     >
-      <ods-undo-icon icon class="fill-text" />
+      <ods-icon icon name="undo" fill="text" />
     </ods-button-with-spinner>
   } @else {
     <ods-button-with-spinner
@@ -45,7 +45,7 @@
       variant="outline"
       (clickEmitter)="zurueckstellen()"
     >
-      <ods-undo-icon icon />
+      <ods-icon icon name="undo" />
     </ods-button-with-spinner>
   }
 }
diff --git a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts
index 51f20cf81bc614ac1d8ebbe805042db6709aff56..df724ad374dfaf4d7a228604c95f6beee725f9a3 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/buttons/zurueckstellen-button/zurueckstellen-button.component.spec.ts
@@ -26,7 +26,7 @@ import { mock } from '@alfa-client/test-utils';
 import { VorgangCommandService, VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonWithSpinnerComponent } from '@ods/component';
-import { TooltipDirective, UndoIconComponent } from '@ods/system';
+import { IconComponent, TooltipDirective } from '@ods/system';
 import { createCommandResource } from 'libs/command-shared/test/command';
 import { getDataTestIdAttributeOf } from 'libs/tech-shared/test/data-test';
 import { createVorgangWithEingangResource } from 'libs/vorgang-shared/test/vorgang';
@@ -52,7 +52,7 @@ describe('ZurueckstellenButtonComponent', () => {
         ZurueckstellenButtonComponent,
         HasLinkPipe,
         MockComponent(ButtonWithSpinnerComponent),
-        MockComponent(UndoIconComponent),
+        MockComponent(IconComponent),
         MockDirective(TooltipDirective),
       ],
       providers: [
diff --git a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts
index 9d9b70374ce53cd3a9dfd3a962849aae426ef87d..6e02eacd8d900f7c37fa503cc2921591713632f0 100644
--- a/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts
+++ b/alfa-client/libs/vorgang-detail/src/lib/vorgang-detail.module.ts
@@ -81,7 +81,6 @@ import {
   RadioButtonCardComponent,
   SpinnerIconComponent,
   TooltipDirective,
-  UndoIconComponent,
 } from '@ods/system';
 import { NotHasAnyLinkPipe } from '../../../tech-shared/src/lib/pipe/not-has-any-link.pipe';
 import { ProgressBarComponent } from '../../../ui/src/lib/ui/progress-bar/progress-bar.component';
@@ -143,7 +142,6 @@ const routes: Routes = [
     RadioButtonCardComponent,
     ButtonComponent,
     ButtonCardComponent,
-    UndoIconComponent,
     SpinnerIconComponent,
     AttachmentComponent,
     AttachmentWrapperComponent,