diff --git a/app/client/api-client/types.gen.ts b/app/client/api-client/types.gen.ts
index 4e107974..ad7ab3ea 100644
--- a/app/client/api-client/types.gen.ts
+++ b/app/client/api-client/types.gen.ts
@@ -4141,6 +4141,7 @@ export type GetBackupProgressResponses = {
repositoryName: string;
scheduleId: string;
seconds_elapsed: number;
+ seconds_remaining: number;
total_bytes: number;
total_files: number;
volumeName: string;
diff --git a/app/client/modules/backups/components/backup-progress-card.tsx b/app/client/modules/backups/components/backup-progress-card.tsx
index 053ac28d..4e9734b0 100644
--- a/app/client/modules/backups/components/backup-progress-card.tsx
+++ b/app/client/modules/backups/components/backup-progress-card.tsx
@@ -46,6 +46,9 @@ export const BackupProgressCard = ({ scheduleShortId, initialProgress }: Props)
const currentFile = progress?.current_files?.[0] || "";
const fileName = currentFile.split("/").pop() || currentFile;
const speed = progress ? formatBytes(progress.bytes_done / progress.seconds_elapsed) : null;
+ const eta = progress?.seconds_remaining != null && progress.seconds_remaining > 0
+ ? formatDuration(progress.seconds_remaining)
+ : null;
return (
ETA
+{progress ? (eta ?? "Calculating...") : "—"}
+