← Back

FilmSlate

Driving impact from an ambiguous directive

Overview

FilmSlate is a curated indie film streaming platform with a rotating 30-day library and a growing user base driven by a popular Substack newsletter. The platform's trial-to-paid conversion rate had stalled at 32%, and leadership wanted it above 40% — but there was no defined roadmap for how to get there.

I owned the full discovery process: signal analysis, foundational research, competitor benchmarking, solution ideation, prototyping, usability testing, prioritisation, sprint planning, and stakeholder communication. This case study walks through how I moved from ambiguous data to a validated product strategy with a projected +18% conversion uplift.

Live Prototype

About the prototype:
  1. Optimised for Desktop and built with Figma Make and Claude Code to demonstrate product concepts.
  2. Accessibility built-in with semantic HTML, ARIA attributes and colour contrast to AA standard.
  3. Demonstrates key journeys around: onboarding, post-watch feedback, recommendations, and RAG-powered recovery.
Suggestions:
  • Try signing up and going through the genre selection flow, or skipping selection to see a prompt on the browse screen.
  • Initiate film playback and interact with the trial dialog and post-watch feedback. (hint: click the X)
  • Test the RAG-powered recovery flow by navigating to the Editorial for an expired film. (hint: it's the oldest editorial piece).
Open the prototype

What this case study demonstrates

The Objective

Improve trial-to-paid conversion from 32% to over 40%.

The focus metric was the trial-to-paid subscriber conversion rate. Everything else — sign-up completion, monthly active users, content engagement — was a lever that fed into it.

I had access to three data sources: behavioural analytics, customer support tickets, and app store reviews. The constraint was a small engineering team that couldn't run parallel workstreams, meaning prioritisation wasn't just important — it determined what would and wouldn't get built.

Key Constraint

Limited engineering resources meant initiatives had to be sequenced, not parallelised. Every prioritisation decision carried a real opportunity cost.

The Challenge

The data pointed in two directions

Users don't trust the sign-up process

34% of users dropped off before completing sign-up. The payment gateway — the single most reported issue at 22% of all support tickets — required card details before any value was delivered. App crashes and tablet failures compounded the problem, but the reviews revealed something deeper than technical bugs: the sign-up flow felt untrustworthy.

"Why do I need to enter payment details before the free trial? Sketchy."

— App store review, 1 star

The tablet app was particularly affected. Despite tablets having a 16% share of devices used for streaming, they accounted for just 5% of FilmSlate sign-ups — a gap almost entirely attributable to the app failing to load.

Chart showing tablet devices at 16% of streaming sessions but only 5% of sign-ups
Analytics points to tablet users being blocked during sign-up.

Users want a deeper connection to the films

Around 1 in 6 reported issues related to difficulty finding content. 60% of subscribers watched fewer than three films per month, and many were leaving the app entirely to research films on Google. Users who did complete at least one full film were 2.5x more likely to convert to paid — making content relevance a high-leverage factor.

App store reviews pointed not just to a filtering or recommendation problem, but to a desire for the editorial warmth that made the Substack newsletter popular. The app felt impersonal by comparison.

"Finding something to watch takes forever. The app feels impersonal."

— App store review, 3 stars
Content discovery ranked second after considering frequency x impact
Content discovery ranked second after considering frequency x impact.

Fix What's Broken First

Technical fixes — payment gateway timeouts, app crashes, and the non-functional tablet app — were prioritised first. They clustered into the "quick wins" quadrant of the impact/effort matrix: low effort to implement, high impact on the conversion rate.

Fixing these issues was estimated to contribute +4% to the trial conversion rate, driven primarily by recovering the tablet sign-up shortfall (from 5% to an expected 14% of all sign-ups) and reducing the overall sign-up drop-off rate.

Key Decision

Technical fixes were prioritised ahead of new features despite the personalisation opportunity having higher total impact (+8%). Reasoning: fixes unblock the funnel for all downstream improvements, tend to ship faster, and immediately reduce support ticket volume. Building new features on a broken foundation would have diluted their measurable impact. By sequencing rather than parallelising, the personalisation features were deferred to Sprint 2+. This was accepted as the right trade-off given the team's capacity and the dependency of engagement metrics on users being able to sign up successfully. Addressing the technical issues also reduced the workload on the support team and relieved the downward pressure on the app's rating.

The Biggest Lever Was Personalisation

With the technical foundation addressed, the largest projected impact (+8% to conversion) came from helping users find content that felt personally relevant.

The data supported this from multiple angles: behavioural analytics showed low film completion rates, support tickets flagged discovery friction, and app store reviews explicitly requested smarter recommendations. Competitor analysis reinforced the opportunity — MUBI and Flix Premiere had built identities around community and curation respectively, but neither had invested in individual personalisation. This was FilmSlate's chance to differentiate.

Competitor Positioning

Flix Premiere positions itself around hand-picked content and filmmaker access. MUBI focuses on the craft of cinema and a global film community. FilmSlate had an opportunity to own the individual — a platform that learns what you love.

Research confirmed the direction

Before jumping to solutions, I conducted foundational research with participants of differing age, gender, and ability. The goal was to reduce the risk level of assumptions and increase confidence in the problem and solution space.

Two findings were particularly important. First, participants don't actively search for content — they pick from what is surfaced and anchor decisions in their known tastes. This reframed the problem from "users can't find content" to "we're not surfacing the right content for them." Second, participants are highly sensitive to trust, value, transparency, and relevance when deciding to join and stay with a platform — validating both the paywall and personalisation directions simultaneously.

Key Decision

Research was conducted before solution ideation to de-risk assumptions. The finding about passive content selection directly shaped the solution: rather than improving search or filtering (which assumes active browsing), I designed a system that surfaces relevant content proactively.

What I Designed and Built

Experience 1: A feedback loop that learns what you love

I designed and built a high-fidelity interactive prototype in Figma Make (with a fast-follow in Claude Code) that demonstrates a three-part personalisation system:

  1. Capture genre preferences during sign-up.

    Users select from visual tiles representing genres (Action, Comedy, Horror, Romance, Sci-Fi, Drama, Thriller, Documentary). This step is low effort for the user but immediately seeds a basic taste profile. It's optional and skippable — but usability testing showed all participants chose to complete it, indicating it was perceived as value-adding rather than friction.

  2. Post-watch feedback.

    After a user stops watching a film — whether they finished it, paused, or navigated away — a lightweight prompt captures whether they liked it. This signal feeds back into the taste profile, allowing recommendations to evolve over time.

  3. "For You" recommendations.

    A dedicated section on the browse screen surfaces films aligned with the user's taste profile. This is the visible output of the feedback loop — the moment the user sees that FilmSlate understands them.

These three touchpoints form a continuous loop: preferences seed the profile, feedback refines it, and recommendations reflect it.

Genre preference selection screen and post-watch feedback prompt

Solution Ideation Process

These features emerged from a Crazy 8's rapid ideation session that generated eight concepts. Ideas like importing taste profiles from external services (dependency risk) and binary swipe-based profiling (too slow, too binary) were deprioritised. The winning ideas — genre selection, post-watch feedback, and a "For You" list — were selected for their low user effort, data richness, and feasibility within the engineering constraints.

Personalisation that works for existing users too

A common trap with onboarding-based features is that they only benefit new users. FilmSlate's existing subscriber base — the people already paying — would miss out entirely, creating a data parity problem where the recommendation engine has no signal for a significant portion of users.

To solve this, the genre preference step is designed as a standalone interaction that can surface in two contexts: during sign-up for new users, and as a contextual prompt on the browse screen for existing users who don't yet have preferences set. The prompt is non-blocking and dismissable, but positioned at the moment a user is actively looking for something to watch — when it's most relevant.

This means the recommendation engine can serve the entire user base, not just the newest cohort, and preference coverage can grow incrementally toward the 60% target set in the OKRs.

Browse screen prompt for existing users to add genre preferences

Key Decision

Designing for existing users added complexity (an additional UI surface, state management for users with/without preferences) but was essential for the feature to deliver its projected impact. Without it, the "For You" section would be empty for most users at launch.

Experience 2: Move the paywall to the moment of intent

The original sign-up flow required payment details as the final step before accessing the platform. For a 7-day free trial, this felt premature — users were being asked to trust FilmSlate with their card details before seeing a single film or experiencing any personalisation.

The redesigned flow defers the payment step to the moment a user taps "play" on a film they want to watch. This means users can create an account with just their basic details, optionally provide genre preferences, browse the full catalogue and film detail pages, and see their personalised "For You" recommendations — all before entering payment details when they're ready to commit.

This builds trust incrementally: the user has explored the platform, seen value, and made an active choice before the paywall appears. It also reduces the blast radius of payment gateway failures — if the gateway is down, users can still browse instead of being locked out entirely.

Payment screen shown at point of film play, not during sign-up

Key Decision

Moving the payment screen downstream has a trade-off: it increases the number of "free" users on the platform who may never convert. This was accepted because the current setup was actively driving users away — a failed payment during sign-up meant total loss, whereas a user who's browsed and engaged has a much higher baseline intent when they do reach the paywall. Estimated contribution: +4% to trial conversion.

Experience 3: Recovering high-intent users with RAG

FilmSlate's content library rotates every 30 days, but Substack posts are permanent. Over time, an increasing proportion of newsletter links will point to films that are no longer available. For a reader who's just been compelled by an editorial to watch a specific film, landing on an "unavailable" screen is a dead end — and likely the last interaction they have with FilmSlate.

I proposed a deep-link feature that detects when a linked film has expired and uses retrieval-augmented generation (RAG) to recover the moment. The system compares the original editorial text of the expired film against the editorials of all currently available titles using semantic similarity. It then surfaces three alternative recommendations ranked by relevance.

RAG-powered deep-link recovery flow for expired films

This approach preserves the editorial voice — recommendations are grounded in the same kind of curated writing that brought the user to FilmSlate in the first place, not generic metadata matching. It turns a potential churn moment into a discovery opportunity.

Technical Approach

RAG works by embedding editorial texts into a vector space and performing similarity search. When a deep-link targets an expired film, the system retrieves the original editorial embedding and finds the three closest matches among currently available titles. This is computationally lightweight at query time and can be updated whenever the library rotates.

Usability Findings

A moderated usability study was conducted with the high-fidelity Figma prototype.

What worked

What needs refining

Key Decision

The recommendation following this study was to refine the prototype and conduct a second round of testing before committing engineering resources to build. This is a deliberate choice to invest in another test cycle rather than rush to development — reducing the risk of building something that doesn't fully deliver. If a second round shows higher confidence in recommended content, the recommendation is to build.

Accessibility

Accessibility was treated as a build constraint from the outset rather than a post-launch consideration. The usability study included participants of differing ability, which meant the prototype needed to meet an accessible standard before any testing began. Following the study, a full accessibility review was conducted across all components and views against WCAG 2.1 AA — it found a solid foundation alongside a prioritised set of issues to address before launch.

Where the prototype performs well

Projected Impact

Initiative Mechanism Projected Impact
Fix technical blockers Recover tablet sign-ups, eliminate payment gateway failures, fix app crashes +4%
Personalised recommendations Genre preferences → taste profile → "For You" list → post-watch feedback loop +8%
Streamline sign-up Defer payment to moment of intent, let users explore before committing +4%
RAG deep-link recovery Recommend alternatives when Substack links point to expired content +2%
Total +18%

This would take the trial-to-paid conversion rate from 32% to approximately 50%, exceeding the 40% target. In revenue terms, the combined impact translates to over £1m in additional annual subscriber revenue.

Assumptions & Risks

These projections assume:
  1. Technical fixes recover the full tablet sign-up shortfall
  2. The conversion rate of users who complete a film holds at 2.5x the baseline
The +2% RAG estimate is directional — it hasn't been validated through testing. The highest-confidence figure is the +4% from technical fixes, which is directly derivable from the behavioural data.

Lessons Learned

Prototypes uncover hidden assumptions

Building a high-fidelity interactive prototype didn't just communicate the vision — it surfaced refinements that would have been invisible in a written specification. The usability study revealed that personalised recommendations capture attention but don't yet drive confident selection on their own. That finding directly changed the recommendation: iterate on the prototype before committing engineering resources, rather than building immediately.

This is the design-engineering loop in practice. The ability to build something testable — quickly and at high fidelity — compresses the feedback cycle and produces better product decisions.

The usability feedback also highlighted the importance of validating ideas, even if it seems the solution is clear.