diff --git a/apps/web/public/media/google-calendar-icon.png b/apps/web/public/media/google-calendar-icon.png
new file mode 100644
index 0000000000..4f38e18836
Binary files /dev/null and b/apps/web/public/media/google-calendar-icon.png differ
diff --git a/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx b/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx
index 5b088cd06d..71c0ca01aa 100644
--- a/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx
+++ b/packages/ui/src/components/ui/legacy/calendar/AllDayEventBar.tsx
@@ -95,6 +95,16 @@ const AllDayEventBar = ({ dates }: { dates: Date[] }) => {
)}
onClick={() => openModal(event.id, 'all-day')}
>
+ {typeof event.google_event_id === 'string' &&
+ event.google_event_id.trim() !== '' && (
+
+ )}
{event.title}
);
diff --git a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx
index 451289c6bb..2f6af1f5b6 100644
--- a/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx
+++ b/packages/ui/src/components/ui/legacy/calendar/EventCard.tsx
@@ -1014,6 +1014,16 @@ export default function EventCard({ dates, event, level = 0 }: EventCardProps) {
aria-label="Event locked"
/>
)}
+ {typeof localEvent.google_event_id === 'string' &&
+ localEvent.google_event_id.trim() !== '' && (
+
+ )}
{localEvent.title || 'Untitled event'}
diff --git a/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx b/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx
index dbc5463f88..0ceeee37fa 100644
--- a/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx
+++ b/packages/ui/src/components/ui/legacy/calendar/UnifiedEventModal.tsx
@@ -852,8 +852,22 @@ export function UnifiedEventModal() {