diff --git a/src/components/metrics/UniqueSessions.tsx b/src/components/metrics/UniqueSessions.tsx
index d39405a6..8f0cba3b 100644
--- a/src/components/metrics/UniqueSessions.tsx
+++ b/src/components/metrics/UniqueSessions.tsx
@@ -1,27 +1,39 @@
-import { Container, Text } from '@umami/react-zen';
-import { useMemo } from 'react';
-import { useWebsiteEventsQuery } from '@/components/hooks';
+import { Container, Loading, Text } from '@umami/react-zen';
+import { useWebsiteStatsQuery } from '@/components/hooks';
-const UniqueSessions = ({ websiteId }) => {
- const query = useWebsiteEventsQuery(websiteId, { view: 'all' });
+interface UniqueSessionsProps {
+ websiteId: string;
+}
- const uniqueSessionCount = useMemo(() => {
- if (!query?.data?.data) return 0;
+const UniqueSessions = ({ websiteId }: UniqueSessionsProps) => {
+ const { data, isLoading, error } = useWebsiteStatsQuery(websiteId);
- const uniqueSessions = new Set(query.data.data.map((event: any) => event.sessionId));
+ const renderContent = () => {
+ if (isLoading) {
+ return ;
+ }
- return uniqueSessions.size;
- }, [query?.data?.data]);
+ if (error) {
+ return (
+
+ Error loading data
+
+ );
+ }
+
+ return (
+
+ {data?.visitors ?? 0}
+
+ );
+ };
return (
Unique Sessions:
-
- {' '}
- {uniqueSessionCount}
-
+ {renderContent()}
);
};