diff --git a/Controls/OverlayHost.xaml b/Controls/OverlayHost.xaml
index d941351..852cef2 100644
--- a/Controls/OverlayHost.xaml
+++ b/Controls/OverlayHost.xaml
@@ -156,7 +156,7 @@
Style="{StaticResource YtButtonSecondary}" FontSize="11" Padding="10,5"/>
-
diff --git a/ViewModels/MainViewModel.Overlays.cs b/ViewModels/MainViewModel.Overlays.cs
index 387011f..03ce1f5 100644
--- a/ViewModels/MainViewModel.Overlays.cs
+++ b/ViewModels/MainViewModel.Overlays.cs
@@ -1,3 +1,4 @@
+using System;
using System.Diagnostics;
using System.IO;
using System.Windows.Input;
@@ -46,6 +47,10 @@ public partial class MainViewModel : ViewModelBase
public string PaidOfferText => "Unlocks 60 fps for streaming and recording.";
public string TrustLine => "One-time purchase · lifetime licence · no account, no subscription, no tracking.";
+ /// Footer copyright. The year is the current one, not a hardcoded literal, so a build
+ /// shipped next year does not carry a stale date.
+ public string CopyrightLabel => $"© {DateTime.Now.Year} Llama Chile Shop";
+
/// Shown instead of the price and CTA once ownership is verified: a paying customer is
/// never sold to.
public string LicenceStateLabel => IsAppOwned ? "Licence: owned via Steam — thank you." : string.Empty;
diff --git a/ytLive.Tests/AboutHubTests.cs b/ytLive.Tests/AboutHubTests.cs
index 81bf7d7..42af2d3 100644
--- a/ytLive.Tests/AboutHubTests.cs
+++ b/ytLive.Tests/AboutHubTests.cs
@@ -117,7 +117,7 @@ public sealed class AboutHubTests
Assert.Equal(Visibility.Visible, upgradeBlock!.Visibility);
var copyright = FindVisualChildByName(window, "AboutCopyright");
- Assert.Equal("© Llama Chile Shop", copyright!.Text);
+ Assert.Equal($"© {DateTime.Now.Year} Llama Chile Shop", copyright!.Text);
Assert.DoesNotContain("Made by gramps", TextOf(window));
// A paying customer is never sold to.