diff --git a/.coveragerc b/.coveragerc
index 942f32eb9a567896a3cc3500890c8a28995d27b1..44b654d05ef58046c40f074ecead6e2e29eddac1 100644
--- a/.coveragerc
+++ b/.coveragerc
@@ -641,6 +641,7 @@ omit =
     homeassistant/components/kwb/sensor.py
     homeassistant/components/lacrosse/sensor.py
     homeassistant/components/lametric/__init__.py
+    homeassistant/components/lametric/button.py
     homeassistant/components/lametric/coordinator.py
     homeassistant/components/lametric/entity.py
     homeassistant/components/lametric/notify.py
diff --git a/homeassistant/components/lametric/button.py b/homeassistant/components/lametric/button.py
new file mode 100644
index 0000000000000000000000000000000000000000..4d8c75f0ab0e0f66e392f43e30a120ee98a699dc
--- /dev/null
+++ b/homeassistant/components/lametric/button.py
@@ -0,0 +1,86 @@
+"""Support for LaMetric buttons."""
+from __future__ import annotations
+
+from collections.abc import Awaitable, Callable
+from dataclasses import dataclass
+from typing import Any
+
+from demetriek import LaMetricDevice
+
+from homeassistant.components.button import ButtonEntity, ButtonEntityDescription
+from homeassistant.config_entries import ConfigEntry
+from homeassistant.core import HomeAssistant
+from homeassistant.helpers.entity import EntityCategory
+from homeassistant.helpers.entity_platform import AddEntitiesCallback
+
+from .const import DOMAIN
+from .coordinator import LaMetricDataUpdateCoordinator
+from .entity import LaMetricEntity
+
+
+@dataclass
+class LaMetricButtonEntityDescriptionMixin:
+    """Mixin values for LaMetric entities."""
+
+    press_fn: Callable[[LaMetricDevice], Awaitable[Any]]
+
+
+@dataclass
+class LaMetricButtonEntityDescription(
+    ButtonEntityDescription, LaMetricButtonEntityDescriptionMixin
+):
+    """Class describing LaMetric button entities."""
+
+
+BUTTONS = [
+    LaMetricButtonEntityDescription(
+        key="app_next",
+        name="Next app",
+        icon="mdi:arrow-right-bold",
+        entity_category=EntityCategory.CONFIG,
+        press_fn=lambda api: api.app_next(),
+    ),
+    LaMetricButtonEntityDescription(
+        key="app_previous",
+        name="Previous app",
+        icon="mdi:arrow-left-bold",
+        entity_category=EntityCategory.CONFIG,
+        press_fn=lambda api: api.app_previous(),
+    ),
+]
+
+
+async def async_setup_entry(
+    hass: HomeAssistant,
+    entry: ConfigEntry,
+    async_add_entities: AddEntitiesCallback,
+) -> None:
+    """Set up LaMetric button based on a config entry."""
+    coordinator: LaMetricDataUpdateCoordinator = hass.data[DOMAIN][entry.entry_id]
+    async_add_entities(
+        LaMetricButtonEntity(
+            coordinator=coordinator,
+            description=description,
+        )
+        for description in BUTTONS
+    )
+
+
+class LaMetricButtonEntity(LaMetricEntity, ButtonEntity):
+    """Representation of a LaMetric number."""
+
+    entity_description: LaMetricButtonEntityDescription
+
+    def __init__(
+        self,
+        coordinator: LaMetricDataUpdateCoordinator,
+        description: LaMetricButtonEntityDescription,
+    ) -> None:
+        """Initialize the button entity."""
+        super().__init__(coordinator=coordinator)
+        self.entity_description = description
+        self._attr_unique_id = f"{coordinator.data.serial_number}-{description.key}"
+
+    async def async_press(self) -> None:
+        """Send out a command to LaMetric."""
+        await self.entity_description.press_fn(self.coordinator.lametric)
diff --git a/homeassistant/components/lametric/const.py b/homeassistant/components/lametric/const.py
index 0fe4b3f21d8fe2ec38a24d7f1d24ce76e0025de0..da84450e784e856bcfcd892b82ebdc5d032952a2 100644
--- a/homeassistant/components/lametric/const.py
+++ b/homeassistant/components/lametric/const.py
@@ -7,7 +7,7 @@ from typing import Final
 from homeassistant.const import Platform
 
 DOMAIN: Final = "lametric"
-PLATFORMS = [Platform.NUMBER]
+PLATFORMS = [Platform.BUTTON, Platform.NUMBER]
 
 LOGGER = logging.getLogger(__package__)
 SCAN_INTERVAL = timedelta(seconds=30)