Every December, Spotify Wrapped floods social feeds. Users share their top songs, listening minutes, quirky personality labels, and screenshots of their "listening aura." It's shareable and surprisingly hard to replicate.
If you're a developer asking "How do I build something like this for my own app?", the answer depends on what data you're wrapping. Are you summarizing a user's Spotify listening history? Or their activity inside your product (lessons completed, workouts logged, streaks maintained, words written)?
This guide covers six approaches, from pulling raw data yourself to plugging into purpose-built platforms. We'll compare what each handles, where it stops, and when it fits. Not every tool belongs in every project.
The Approaches
1. Build It Yourself On The Spotify Web API
If your recap is literally about Spotify listening data, you'll start here. The Spotify Web API exposes endpoints for a user's top tracks, top artists, and recently played items. You authenticate via OAuth, request the relevant scopes, and fetch the data.
What it handles: top tracks and artists ranked by calculated affinity (not raw play counts), recently played items (capped at 50), and genres derived from artist data. Per-user play counts are not available via the API.
Where it stops: the API gives you data, not a finished experience. You still need to aggregate it into meaningful stats, design the UI, render any visuals or videos, and handle sharing. Spotify also limits how far back "recently played" goes (50 tracks), so you may need to poll and store data over time.
Best for: teams building a true Spotify-data recap who want full control and have engineering capacity to handle the rest.
2. Plainly Videos (Video Automation Via After Effects)
Plainly lets you create personalized videos at scale by connecting dynamic data to After Effects templates. You design your Wrapped-style video in After Effects, define which text and image layers are dynamic, then call Plainly's API to render unique videos for each user.
What it handles: template-based video rendering, batch generation, dynamic text insertion, and media swapping per user.
Where it stops: you need After Effects skills (or a designer who has them) to build the template. Plainly renders the video; it doesn't aggregate your user data or host the sharing flow.
Best for: teams that want polished, animated recap videos and have design resources to create the template.
3. Shotstack (Cloud Video Editing API)
Shotstack is a cloud video-editing API. You define a video timeline in JSON (clips, text overlays, transitions), send it to the API, and get a rendered video back. It also offers no-code integrations with Zapier and Make.
What it handles: programmatic video assembly and cloud rendering. No local infrastructure required.
Where it stops: you're building the timeline logic yourself. It's more flexible than template-based tools but requires more code.
Best for: developers who want fine-grained control over video composition without managing rendering infrastructure.
4. Rosebud AI (No-Code AI App Builder)
Rosebud AI positions itself as an AI-powered app builder. You describe what you want, and it generates a functional app. In theory, you could prompt it to build a Wrapped-style dashboard or summary page.
What it handles: rapid prototyping, no-code app generation.
Where it stops: the output quality depends on how well the AI interprets your prompt. You'll likely need to refine and customize. It's better for MVPs than production-grade experiences.
Best for: non-technical founders or teams validating a concept before investing in custom development.
5. Emergent (AI-Generated Apps)
Emergent is another AI app generator. Similar to Rosebud, you describe your idea and it produces a working prototype.
What it handles: quick app scaffolding, low barrier to entry.
Where it stops: same caveats as Rosebud. AI-generated apps can get you most of the way, but the final stretch (polish, edge cases, performance, accessibility) usually requires manual work.
Best for: early-stage exploration, hackathons, demos, or internal tools where speed matters more than polish.
6. Trophy (Gamification Infrastructure)
Trophy fits a different use case: when your year-in-review summarizes the user's activity inside your own app, not their Spotify listening.
If your product tracks streaks, points, achievements, or leaderboard rankings, Trophy already stores that data with timestamps. You can query windowed aggregations (this year's total points, longest streak, achievements unlocked) and pipe them into your recap UI.
What it handles: tracking user actions via API, storing streaks and points with timezone-aware logic, windowed aggregation for time-based summaries, lifecycle emails (including year-in-review messages), and an open-source UI kit for displaying gamification data.
Where it stops: Trophy is not a video-render tool. If you want animated Wrapped-style videos, you'd pair Trophy's data with a tool like Plainly or Shotstack. Trophy also doesn't track external data sources like Spotify listening; it tracks actions inside your product.
Best for: apps with existing gamification (or plans to add it) that want to repurpose engagement data for personalized recaps without building aggregation logic from scratch.
Comparison Table
| Approach | Best For | Coding Required | What It Handles | Where It Stops |
|---|---|---|---|---|
| Spotify Web API | Spotify listening data recaps, full control | High | Raw listening data (top tracks and artists by affinity ranking, recently played) | No aggregation, UI, video, or sharing |
| Plainly Videos | Polished personalized videos at scale | Medium (After Effects + API calls) | Template-based video rendering, batch generation | Requires AE skills, doesn't aggregate data |
| Shotstack | Programmatic video composition | Medium-High (JSON timelines + API) | Cloud video editing, flexible composition | You build the timeline logic yourself |
| Rosebud AI | Rapid prototyping, non-technical teams | Low | AI-generated app scaffolding | Output needs refinement, not production-ready |
| Emergent | Quick MVPs, hackathons | Low | AI-generated app structure | Requires manual polish for production |
| Trophy | In-app activity recaps (streaks, points, achievements) | Low-Medium (API calls + UI) | User action tracking, windowed aggregation, lifecycle emails | Not a video tool, tracks your app's data only |
Examples / Implementation
How To Choose
Start with two questions:
What data are you wrapping?
If you're building a recap of Spotify listening data, you need the Spotify Web API. Everything else layers on top (video rendering, UI, sharing).
If you're wrapping your users' in-app activity (lessons, workouts, purchases, streaks), you need infrastructure that tracks and aggregates that activity. Trophy handles this if gamification mechanics are part of your product. Otherwise, you'll query your own database.
Do you need video?
Animated, shareable videos are a big part of Wrapped's appeal. If video is essential, look at Plainly (template-based, designer-friendly) or Shotstack (code-first, flexible). Both integrate with whatever data source you're using.
If a static dashboard or shareable image is enough, you can skip video tools entirely and focus on the data layer plus a frontend.
A Worked Example
Imagine you run a language-learning app. Users complete lessons, maintain streaks, earn points, and unlock achievements. You want to send each user a year-in-review email in December showing:
- Total lessons completed this year
- Longest streak
- Points earned
- Rank among all users
With Trophy, you'd already be tracking lessons as user actions and storing streaks and points. To build the recap:
- Query Trophy's API for the user's stats within the year window.
- Fetch their leaderboard position.
- Pass that data to your email template (Trophy's lifecycle email tools can handle this, or export to your ESP).
- Optionally, send the same data to Plainly or Shotstack if you want a video version.
Without Trophy, you'd need to build the tracking, aggregation, windowed queries, and timezone handling yourself. Doable, but expect a few weeks of engineering work depending on your data model.
When To Build In-House
Building your own Wrapped feature makes sense when:
- Your data model is simple and already queryable (e.g., you just need a COUNT and MAX from a single table).
- You have engineering bandwidth and this is a priority.
- You want total control over every pixel and interaction.
- Your recap doesn't involve gamification data (streaks, points, achievements, leaderboards).
Using a tool makes sense when:
- You'd rather ship in days than weeks.
- You need specialized capabilities like video rendering, timezone-aware streak logic, or batch personalization at scale.
- The tool handles infrastructure you'd otherwise maintain yourself (rendering servers, aggregation pipelines, timezone logic, email delivery).
Neither choice is universally correct. A two-person startup with a simple recap might ship faster by writing raw SQL. A team adding gamification to a mature app might save months by using Trophy's existing aggregation.
Key Takeaways
- Spotify Wrapped-style features vary widely depending on the data source (Spotify listening vs. in-app activity) and the output format (video vs. dashboard vs. email).
- The Spotify Web API is the starting point for actual Spotify data, but it gives you raw data, not a finished product.
- Video tools like Plainly and Shotstack handle rendering; you supply the data and design.
- No-code AI builders (Rosebud, Emergent) can scaffold a prototype quickly but need refinement for production.
- Trophy fits when your recap summarizes in-app engagement (streaks, points, achievements, leaderboard ranks) because it already tracks and aggregates that data.
- Building in-house is viable for simple recaps with existing data pipelines. Tools save time when specialized logic is involved (video rendering, timezone-aware gamification, lifecycle messaging, batch personalization).
Conclusion
There's no single "Wrapped SDK" because Wrapped combines data aggregation, visual design, distribution, and shareability. The right stack depends on your data source and how much you want to build yourself.
If your app already includes gamification mechanics (or you're planning to add them), Trophy gives you the tracking and aggregation layer so you can focus on the creative side. If you're working with Spotify data or need video rendering, pair the Spotify API with a tool like Plainly or Shotstack.
Get the latest on gamification
Product updates, best practices, and insights on retention and engagement — delivered straight to your inbox.
The gamification layer for consumer apps
Drop-in gamification features you can ship this sprint. Increase retention and user engagement without sacrificing your roadmap.
Book a call