diff --git a/locales/es-ES/server.ftl b/locales/es-ES/server.ftl
index a4192cebfa..7cc8c7c098 100644
--- a/locales/es-ES/server.ftl
+++ b/locales/es-ES/server.ftl
@@ -18,7 +18,14 @@ buttonSignIn =
.title = Iniciar sesión
screenshotsLogo =
.title = Página de inicio de Screenshots
+bannerSignIn = Inicia sesión o regístrate para acceder a tus capturas en todos tus dispositivos y guardar tus favoritas para siempre.
bannerUpsell = { gScreenshotsDescription } Obtener Firefox ahora
+# Text used in Firefox Account onboarding promo shown below
+# Sign in button in header
+onboardingPromoTitle = Novedades de Firefox Screenshots
+onboardingPromoMessage = Ahora, inicia sesión en Screenshots con un cuenta de Firefox y haz más:
+onboardingPromoMessageListItem1 = Accede a tu biblioteca desde todos tus dispositivos
+onboardingPromoMessageListItem2 = Almacena tus capturas favoritas para siempre
onboardingPromoDismissButton = Descartar
.title = Descartar
onboardingPromoSigninButton = Iniciar sesión
diff --git a/locales/es-ES/webextension.properties b/locales/es-ES/webextension.properties
index 822f06c565..ee92f25265 100644
--- a/locales/es-ES/webextension.properties
+++ b/locales/es-ES/webextension.properties
@@ -71,6 +71,8 @@ tourBodyFullPage = Selecciona los botones de la parte superior derecha para capt
# Slide number 5:
tourHeaderDownloadUpload = Como más te guste
tourBodyDownloadUpload = Guarda las capturas de la Web recortadas para compartirlas mejor o descárgalas en tu ordenador. También puedes hacer clic en Mis capturas para ver todas las capturas que has hecho.
+tourHeaderAccounts = Screenshots en todas partes
+tourBodyAccounts = Inicia sesión con tu cuenta de Firefox para acceder a tus capturas en todos tus dispositivos y guarda tus capturas favoritas para siempre.
tourSkip = Saltar
tourNext = Diapositiva siguiente
tourPrevious = Diapositiva anterior
diff --git a/locales/su/webextension.properties b/locales/su/webextension.properties
index 5ff5bbfaca..5b2613c468 100644
--- a/locales/su/webextension.properties
+++ b/locales/su/webextension.properties
@@ -41,6 +41,9 @@ imageCropPopupWarning = Gambar anu diteundeun bakal dipotong nepi ka jangkungna
# Section for error strings
# "Out of order" is an humorous way to indicate that the service is not working
# properly.
+requestErrorTitle = Béakeun.
+requestErrorDetails = Hampura! Téwakan teu bisa diteundeun. Cobaan deui engké.
+connectionErrorTitle = Teu bisa nyambung ka téwakan layar anjeun.
# Fired when someone makes a zero-width or zero-height selection
privateWindowErrorTitle = Téwakan layar ditumpurkeun Mode Langlangan Nyamuni
# Section for onboarding strings
diff --git a/server/src/pages/metrics/model.js b/server/src/pages/metrics/model.js
index 4f93cb9918..1addd60ff4 100644
--- a/server/src/pages/metrics/model.js
+++ b/server/src/pages/metrics/model.js
@@ -8,12 +8,14 @@ const queries = {
SELECT
(SELECT COUNT(devices.id) FROM devices) AS total_devices,
(SELECT COUNT(data.id) FROM data WHERE NOT deleted AND expire_time < CURRENT_TIMESTAMP) AS active_shots,
+ (SELECT COUNT(data.id) FROM data WHERE NOT deleted AND expire_time IS NULL) AS forever_shots,
(SELECT COUNT(data.id) FROM data WHERE NOT deleted AND expire_time >= CURRENT_TIMESTAMP) AS expired_recoverable_shots,
(SELECT COUNT(data.id) FROM data WHERE deleted) AS expired_deleted_shots;
`,
columns: [
{title: "Total devices registered", name: "total_devices"},
{title: "Active shots", name: "active_shots"},
+ {title: "Never expiring shots", name: "forever_shots"},
{title: "Expired (recoverable)", name: "expired_recoverable_shots"},
{title: "... (deleted)", name: "expired_deleted_shots"},
],