The opportunity
Users who want to show off their lifts — in every language
Gravl is a weight training app with a large and growing user base worldwide — and a particularly deep concentration across Latin America. Their users track lifts, hit personal records, and build training streaks that they’re proud of. When someone hits a new deadlift PR or logs their hundredth session, the impulse to share is already there. That pride is the raw material for a Branded Video Moment — a personalised video that celebrates the achievement in Gravl’s brand, in a format that social platforms actually distribute.
Gravl wanted to give their users that shareable moment. A short, branded video that fires when a user does something worth celebrating — not a year-end data dump, but a timely, personal milestone. The kind of thing a user posts to their Instagram Stories because it says something about who they are.
But Gravl’s user base spans dozens of countries and languages. A video that reads “Best Lift” and “Bench Press” works in English-speaking markets — but for users in São Paulo, Mexico City, or Buenos Aires, the heart of Gravl’s user base, it feels like someone else’s product. The shareable moment only works if it feels native. A user won’t proudly post a video that’s visibly not built for them.
The solution
The video is dynamic — so localisation is just data
ShareCast renders Gravl’s Branded Video Moments dynamically on the user’s own device — there’s no pre-baked video file sitting on a server. Instead, the video is assembled at render time from a template, the user’s data, and whatever strings Gravl passes in. That architecture exists so each video can be personalised to show that user’s lifts, stats, and milestones, but it also means none of the text in the video is burned in.
Because every string is a variable — section headers like “Best Lift,” stat labels like “Total Volume,” even the names of individual exercises — Gravl’s team can push in whatever language they need, wherever they need it. “Best Lift” becomes “Mejor Levantamiento” in Spanish or “Melhor Levantamento” in Portuguese, “Bench Press” becomes “Press de Banca” or “Supino,” and a stat that reads “12,400 kg lifted” renders with the right unit formatting for the locale.
None of this requires a new video template, a new render pipeline, or a new design. It’s the same video. The strings are just different. Gravl isn’t translating a finished video — they’re authoring the video in every language simultaneously, because the video was never locked to a single language in the first place.
Because the video renders on-device, the economics don’t change either. Serving a personalised, fully localised video to a user in São Paulo costs the same as serving one in London — which is to say, nothing. There’s no per-render server cost. Whether Gravl has ten thousand users sharing or ten million, the infrastructure scales without the bill scaling with it.
For Gravl’s team, the workflow is straightforward: they maintain their translations the same way they handle the rest of their app’s i18n, and those strings flow directly into the video template. When they add a new language, the video supports it immediately. When they update a translation, the video reflects it on the next render.
Why this matters for a LATAM-heavy user base
Gravl’s user base is concentrated across Latin America, where Spanish and Portuguese are the dominant languages. A sharing feature that only renders in English isn’t really a sharing feature for most of their users — it’s a reminder that the product was built somewhere else. The shareable moment only lands if it feels native, and for Gravl, native means multilingual from the start.
Because ShareCast’s architecture treats every string as a variable, Gravl can serve the same video template across their entire user base without rebuilding anything. When they add a new language, the video supports it immediately. The creative work is done once, and the localisation follows their existing i18n workflow — the same translations that power the rest of their app flow straight into the video.