diff --git a/web/default/src/features/users/components/user-quota-cell.tsx b/web/default/src/features/users/components/user-quota-cell.tsx
new file mode 100644
index 00000000..0d024cf9
--- /dev/null
+++ b/web/default/src/features/users/components/user-quota-cell.tsx
@@ -0,0 +1,98 @@
+/*
+Copyright (C) 2023-2026 QuantumNous
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU Affero General Public License for more details.
+
+You should have received a copy of the GNU Affero General Public License
+along with this program. If not, see .
+
+For commercial licensing, please contact support@quantumnous.com
+*/
+import { useTranslation } from 'react-i18next'
+
+import { StatusBadge } from '@/components/status-badge'
+import { Progress } from '@/components/ui/progress'
+import {
+ Tooltip,
+ TooltipContent,
+ TooltipTrigger,
+} from '@/components/ui/tooltip'
+import { formatQuota } from '@/lib/format'
+import { cn } from '@/lib/utils'
+
+type UserQuotaCellProps = {
+ used: number
+ remaining: number
+}
+
+function getQuotaProgressColor(percentage: number): string {
+ if (percentage <= 10) return '[&_[data-slot=progress-indicator]]:bg-rose-500'
+ if (percentage <= 30) return '[&_[data-slot=progress-indicator]]:bg-amber-500'
+ return '[&_[data-slot=progress-indicator]]:bg-emerald-500'
+}
+
+export function UserQuotaCell(props: UserQuotaCellProps) {
+ const { t } = useTranslation()
+ const total = props.used + props.remaining
+ const percentage = total > 0 ? (props.remaining / total) * 100 : 0
+ const formattedRemaining = formatQuota(props.remaining)
+ const formattedTotal = formatQuota(total)
+
+ if (total === 0) {
+ return (
+
+ )
+ }
+
+ return (
+
+
+ }
+ >
+