diff --git a/src/lib/components/logs/logsResponse.svelte b/src/lib/components/logs/logsResponse.svelte
index a1361af54f..5c53cc9945 100644
--- a/src/lib/components/logs/logsResponse.svelte
+++ b/src/lib/components/logs/logsResponse.svelte
@@ -14,7 +14,9 @@
Typography
} from '@appwrite.io/pink-svelte';
import { onMount } from 'svelte';
+ import { isSelfHosted } from '$lib/system';
import LoggingAlert from './loggingAlert.svelte';
+ import SelfHostedLogsAlert from './selfHostedLogsAlert.svelte';
let {
selectedLog,
@@ -83,6 +85,8 @@
{#if responseTab === 'logs'}
{#if selectedLog.logs}
+ {:else if isSelfHosted}
+
{:else if !logging}
{:else}
@@ -93,6 +97,8 @@
{:else if responseTab === 'errors'}
{#if selectedLog.errors}
+ {:else if isSelfHosted}
+
{:else if !logging}
{:else}
diff --git a/src/lib/components/logs/selfHostedLogsAlert.svelte b/src/lib/components/logs/selfHostedLogsAlert.svelte
new file mode 100644
index 0000000000..143efea378
--- /dev/null
+++ b/src/lib/components/logs/selfHostedLogsAlert.svelte
@@ -0,0 +1,19 @@
+
+
+{#if product === 'site'}
+
+ To reduce storage overhead, self-hosted Appwrite no longer stores logs or error output. As a
+ result, this section may be empty. You can still view log status, duration, and response
+ code. Full logs remain available on Appwrite Cloud.
+
+{:else}
+
+ To reduce storage overhead, self-hosted Appwrite no longer stores function logs or error
+ output. As a result, this section may be empty. You can still view execution status,
+ duration, and response code. Full execution logs remain available on Appwrite Cloud.
+
+{/if}