Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added docs/assets/community-games/bubbleshooterpro.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/community-games/farmmergevalley.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/community-games/hotandcold.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
146 changes: 69 additions & 77 deletions docs/guides/best-practices/community_games.md
Original file line number Diff line number Diff line change
@@ -1,111 +1,103 @@
# Building Community Games

Reddit offers a unique platform for a new category of social games. This guide will help you create engaging community games that thrive in Reddit's ecosystem with lessons from some of the games we've seen so far.
Community games are multiplayer experiences that tap into Reddit’s unique social dynamics.

## What are community games?
This guide provides practical tips to help you create engaging community games that thrive in Reddit's ecosystem. Read on to learn about the kinds of mechanics that help drive long-term engagement and unlock a shot at [featuring placements](../launch/feature-guide.mdx) for your app.

Community games are asynchronous multiplayer experiences built specifically for Reddit's platform. They leverage Reddit's unique social dynamics and content mechanics to create engaging, bite-sized gaming experiences that scale from single players to thousands.
## Player retention

## Why build a community game?
Retention is the art of giving players a reason to come back tomorrow. Most successful games create simple, repeatable patterns that become part of the player’s daily routine.

- _Played by millions_ - Successful apps will be distributed to millions of users in their home feed
- _Hosted services_ - We provide hosting, storage (redis), and robust backend capabilities (realtime, scheduler, trigger) with every app
- _Build once, play everywhere_ - if you build your apps once they will run on web, android, and iOS
- _Monetization opportunities_ - We have reddit developer funds and payments to reward successful apps with a handful of new monetization opportunities coming soon.
### Add a subscribe option

## Core design principles
One of the simplest ways to drive repeat play is to encourage users to subscribe to your subreddit. Subscribers will see new app posts and community discussions in their home feed, which organically brings them back to your game.

You can add a β€œJoin” button in your app using the [user actions](../../capabilities/server/userActions.mdx) plugin. This creates a lightweight, opt-in way for players to stay connected and engaged.

### Habits and feedback loops

Build loops in your game that reward daily habits. **Streaks** and **milestone rewards** encourage consistency: players come back to maintain progress and reach the next goal. You’ll see streaks in games like [r/syllo](https://www.reddit.com/r/syllo/), and [r/honk](https://www.reddit.com/r/honk/) lets players earn loot by completing game levels. You can also add streaks to player flairs.

### 1. Keep it bite-sized
**Tip**: Consider adding grace mechanics like streak freezes to reduce churn.

- Focus on quick, discrete gameplay loops
- Reduce "time to fun" - players should be having fun within seconds
- Small scope = faster development and easier maintenance
- Example: [r/ChessQuiz](https://reddit.com/r/chessquiz) offers daily chess puzzles rather than full matches
**Push notifications** are another way to reinforce a daily habit, and they work best when paired with other retention features like streaks, leagues, and leaderboards. Push notifications are currently a limited beta feature, but you can reach out via [r/Devvit](https://www.reddit.com/r/Devvit/) modmail to apply for a spot in our beta program.

### 2. Design for the feed
### Progress and recognition

- Create an eye-catching first screen that stands out
- Include a clear, immediate call to action
- Remember: You're competing with cat videos and memes
- Example: [r/Pixelary](https://reddit.com/r/pixelary) shows the drawing canvas right in the feed
Short-term and long-term goals give players something to work toward, and you’ll want to make progress visible and meaningful:

### 3. Build content flywheels
- Tie daily play to larger systems like **leagues** or **ranks** so that small actions contribute to bigger goals.
- Use visible status indicators like **flair** and **badges** to increase emotional investment in your game.

Reddit posts naturally decay after a few days. Your game needs a strategy to stay relevant:
For short-term goals, [r/HotandCold](https://www.reddit.com/r/HotAndCold/) uses the fire emoji to let players know they’re on the right track, and keeps a progress bar with player avatars to see gameplay progress.

**Option A: Scheduled content**
<p align="center">
<img src="../../assets/community-games/hotandcold.jpg"
alt="HotandCold progress bar"
width="50%" />
</p>

- Daily/weekly challenges
- Automated post creation
- Regular tournaments or events
- Example: [r/Sections](https://reddit.com/r/sections) posts a new puzzle every day
For long-term goals, [r/BubbleShooterPro](https://www.reddit.com/r/BubbleShooterPro/) sets up weekly tournaments to establish leagues and encourages players to return to try to get promoted to the next level.

**Option B: Player-generated content**
<p align="center">
<img src="../../assets/community-games/bubbleshooterpro.png"
alt="BubbleShooterPro tournament"
width="50%" />
</p>

- Players create content through gameplay
- Each play creates new posts/comments
- Moderation systems for quality control
- Example: [r/CaptionContest](https://reddit.com/r/captioncontest) turns each submission into new content
### Competition and social pull

### 4. Embrace asynchronous play
Reddit is inherently social, and it’s a natural fit for **leaderboards**. The daily leaderboard on [r/syllo](https://www.reddit.com/r/syllo/) gives everyone a fresh chance to compete each day.

Benefits:
<p align="center">
<img src="../../assets/community-games/syllo_leaderboard.jpg"
alt="Syllo leaderboard"
width="50%" />
</p>

- Players can participate anytime
- Lower commitment (one move vs. entire game)
- Larger player pool across time zones
- Better scalability
Leverage the community to **highlight top contributors** or celebrate a β€œ**player of the week**” in a way that's visible in the feed. Social visibility turns participation into status.

### 5. Scale from one to many
### Challenges and missions

Your game should be fun at any player count:
Give players clear goals on a cadence to drive engagement:

- Single-player baseline experience
- Scales smoothly as more players join
- Uses leaderboards to create competition
- Example: [r/DarkDungeonGame](https://reddit.com/r/darkdungeongame) works solo but gets better with more players solving together
- **Daily or weekly missions**. Short, achievable tasks create regular reasons to return, like:
- Solve today’s puzzle of [r/pocketgrids](https://www.reddit.com/r/pocketgrids/)
- Submit a drawing in [r/Pixelary](https://www.reddit.com/r/Pixelary/)
- Complete a mission in [r/PlaySpies](https://www.reddit.com/r/PlaySpies/)

## Successful examples
- **Rotating or seasonal events**. Create limited-time themes and special events to keep content fresh and give players urgency.

### Pixelary (drawing and guessing game)
### Reward systems

- **Primary loop**: Draw (hard) β†’ Creates posts
- **Secondary loop**: Guess (easy) β†’ Creates comments (optionally)
- **Why it works**:
- Clear mental model
- Two-tiered engagement
- Natural content generation
- Scales with community size
Use rewards to reinforce meaningful participation. Allow players to accumulate **points** they can **redeem** for perks or other in-game advantages. In [r/FarmMergeValley](https://www.reddit.com/r/FarmMergeValley/), players earn diamonds they can use toward things like purchasing land for their farm.

### ChezzQuiz (competitive chess puzzles)
<p align="center">
<img src="../../assets/community-games/farmmergevalley.png"
alt="FMV diamonds"
width="50%" />
</p>

- **Core loop**: Daily puzzles with competitive solving
- **Why it works**:
- Consistent content schedule
- Built-in competition
- Leverages existing chess knowledge
- Clear success metrics
**Tip**: Align incentives with community values. High-quality contributions should earn more than low-effort ones.

## Best practices checklist
## Why retention matters for featuring

- βœ… Create your own subreddit
- βœ… Can be played in under 2 minutes
- βœ… Has a striking first impression
- βœ… Creates new content regularly
- βœ… Works for both 1 and 1000 players
- βœ… Has clear user actions
- βœ… Includes social elements
- βœ… Uses moderation tools
Reddit prioritizes sustained engagement over short spikes.

Games that consistently bring players back through progression, competition, and repeatable loops build strong retention curves. That ongoing engagement demonstrates lasting community value, which is a key factor in featuring decisions.

## Core design principles

## Common pitfalls to avoid
Use these principles to build for return visits, not just first plays.

- ❌ Complex game rules
- ❌ Long time commitments
- ❌ Requiring specific player counts
- ❌ Dependency on real-time interactions
- ❌ Unclear first actions
- ❌ No content refresh strategy
| Principle | Execution | Example |
| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Keep it bite-sized | Β· Focus on quick gameplay loops.<br>Β· Reduce time to fun β€” players should be engaged within seconds.<br>Β· Smaller scope means faster development and easier maintenance. | [r/chessquiz](https://www.reddit.com/r/chessquiz/) delivers daily puzzles instead of full matches. |
| Design for the feed | Β· Make the first screen eye-catching<br>Β· Include a clear, immediate call to action<br>Β· Remember you’re competing with everything else in the feed | [r/Pixelary](https://www.reddit.com/r/Pixelary/) shows the canvas immediately. |
| Build Content Flywheels | Reddit posts decay quickly. Your game needs a strategy to stay relevant.<br><br>**Option A: Scheduled content**<br>Β· Daily or weekly challenges<br>Β· Automated post creation<br>Β· Recurring tournaments<br><br>**Option B: Player-generated content**<br>Β· Gameplay creates new posts or comments<br>Β· Players generate the content<br>Β· Include moderation systems for quality control | [r/Sections](https://www.reddit.com/r/Sections/) schedules a new puzzle every day.<br><br>[r/captioncontest](https://www.reddit.com/r/captioncontest/) turns submissions into ongoing content. |
| Embrace asynchronous play | Β· Players can participate anytime<br>Β· Lower commitment per session<br>Β· Works across time zones<br>Β· Scales more easily | [r/BlinkWords](https://www.reddit.com/r/BlinkWords/) is available for players any time. |
| Scale from one to many | Your game should be fun at any player count:<br>Β· A strong single-player baseline<br>Β· Smooth scaling as more players join<br>Β· Leaderboards or shared goals to add competition | [r/DarkDungeonGame](https://www.reddit.com/r/DarkDungeonGame/) works solo but improves with collaboration. |

## Key takeaway
## Getting featured

The most successful Reddit community games create interesting content while being played, establishing a virtuous cycle of engagement and discovery. Focus on simplicity, scalability, and social interaction to make your game thrive.
Check out the [Feature Guide](../launch/feature-guide.mdx) to learn more about how Reddit helps your game get discovered.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading