Filter
Peridot Mobile

About F$%*ing Time!

Hello, Dot

Niantic’s Peridot launches “Hello, Dot” globally as free mixed-reality toy with all-new gameplay

Peridot Mobile

Getting Ready for Niantic Spatial

Peridot Beyond

Niantic’s Peridot Beyond releases major update including multiplayer AR for Snap’s outdoor-friendly AR glasses, Spectacles

News

Remaining by your side

Partnerships

Good Dot – A Year of Impact with Peridot

Hello, Dot

Hello, Dot is now available on Apple Vision Pro

Partnerships

Can Virtual Pets Help with Physical Therapy? Niantic and Augment Therapy Want to Find Out

Partnerships

Peridot launches “Pause with Peridot”, a new web-based experience for World Mental Health Day

Hello, Dot

Niantic and Meta partner to expand Peridot’s Hello, Dot experience

Peridot Beyond

Niantic’s Peridot Beyond brings the Peridot franchise to Snap’s outdoor-friendly AR glasses

Partnerships

Peridot partners with PlanetPlay to make our planet greener!

Hello, Dot

Experience the magic of mixed reality with Peridot!

Peridot Mobile

Discover NEW Chaos Traits!

Partnerships

Welcoming Peridot to SunnyTune for Apple Vision Pro

Peridot Mobile

2024 Peridot March Archetype Week

Peridot Mobile

March 2024 Peridot Community Day Weekend

Peridot Mobile

Coming soon: Game balancing and tuning changes!

Peridot Mobile

Forage in the Foliage during Exploration Week!

Peridot Mobile

February 2024 Peridot Community Day Weekend

Peridot Mobile

February 2024 Peridot Nest Bonanza

Peridot Mobile

2024 Peridot January Trait Week

Peridot Mobile

January 2024 Peridot Community Day Weekend

Peridot Mobile

2023 Peridot December Archetype Week

Peridot Mobile

December 2023 Peridot Community Day Weekend

Peridot Mobile

Bringing even more delight to Peridot with Generative AI

Peridot Mobile

2023 Peridot November Archetype Week

Peridot Mobile

November 2023 Peridot Community Day Weekend

Peridot Mobile

Rescue Feral Dots from a mysterious green Blight that is spreading throughout the world!

Peridot Mobile

2023 Peridot October Trait Week

Peridot Mobile

October 2023 Peridot Community Day Weekend

Peridot Mobile

Making Hatching even more fun!

Peridot Mobile

2023 Peridot September Archetype Week

Peridot Mobile

September 2023 Peridot Community Day Weekend

Peridot Mobile

Bringing more whimsy and delight to Hatching!

Peridot Mobile

August 2023 Peridot Trait Week

Peridot Mobile

August 2023 Peridot Community Day Weekend

Peridot Mobile

Build a deeper relationship with your Dots!

Peridot Mobile

More opportunities to earn Nests in-game!

Peridot Mobile

2023 Peridot Tropical Forest Week

Peridot Mobile

Get excited for the first Peridot Archetype Challenge!

Peridot Mobile

July 2023 Peridot Community Day Weekend

Peridot Mobile

Introducing Dot Socialization

Peridot Mobile

June 2023 Peridot Peak Summer Week

Peridot Mobile

We’ll be running small tests for additional opportunities to earn Nests in-game

Peridot Mobile

Celebrate Pride Month with Peridot

Peridot Mobile

June 2023 Peridot Community Day Weekend

Peridot Mobile

May 2023 Peridot Community Day Weekend

Peridot Mobile

Peridot is globally available for download now!

Peridot Mobile

Peridot is launching globally May 9th!

Peridot Mobile

Dot-veloper Insights: Big changes and upcoming maintenance

Peridot Mobile

Dot-veloper Insights: Purr-fecting the Game during Soft Launch

Peridot Mobile

Dot-veloper Insights: Digital Pets Made Real

Peridot Mobile

Introducing Peridot - Explore the World With Adorable Virtual Pets!

About F$%*ing Time!

Hi everyone,

Effective text moderation is a common challenge in game development, requiring a balance between ensuring player safety and allowing for creative expression. This case study explores how our team replaced a costly third-party service with a pragmatic, in-house AI-powered experiment to improve both the player experience and operational costs.

The Problem: A Costly Service

For a long time, we relied on an external, third-party service for text moderation across Niantic games. This service was effective, but it came at a high cost and was no longer reasonable with our smaller footprint of games following the Niantic Spatial spinout. We knew we needed a more sustainable solution.

Our First Attempt: The Static Filter

Our first step was to replace the external service with a rigid, static profanity filter. Internally, this was a simple spreadsheet of over 2,000 words we deemed inappropriate. It wasn’t ideal, but it was a quick solution during what was otherwise an insanely busy time spinning out and standing up our new company.

The player's response was immediate and clear: they hated it. The filter was far too restrictive. Since it couldn't understand context, it would reject appropriate words that simply contained an inappropriate string within. For example, if "strip" was on our profanity list, the filter would also reject the perfectly harmless word "stripes." At the same time, our static list wasn't exhaustive, and new, creative forms of offensive language were getting through. It was the worst of both worlds.

A New Approach: An Experimental AI Filter

It was clear we needed something smarter than a static list but much more cost-effective than the original service. We decided to explore if we could build a quick, AI-powered profanity filter ourselves.

We chose to work with Meta’s Llama-v2-13b model–which was already implemented in Peridot as it powered some of our other gen AI features. Our goal was to create a simple, direct query that could give us a clear "yes" or "no" on a piece of text. After some experimentation, we landed on a very specific prompt:

Prompt Code Block
LLM Prompt
Determine whether the text within the square brackets contains any profanity or NSFW, inappropriate, or offensive references in any language: [text_to_check]. Respond only with a 'T' if the text is inappropriate or a 'F' otherwise, with no other tokens.

By instructing the model to respond only with a "T" for true (inappropriate) or "F" for false, we created a lightweight and fast check.

Measuring the Improvement

Honestly, almost anything would have been an improvement over the static list. But we needed data.

First, we ran our old list of 2,000+ inappropriate words through the Llama prompt and found it correctly identified about 60% of them. More importantly, we collaborated with our community, gathering lists of words that were being incorrectly rejected (false positives) and offensive words that were getting through (false negatives). When we tested this player-sourced list, we saw an accuracy rate of 85%.

While not perfect, we concluded this was a much better starting point. It provides our players with more reasonable leniency while still catching most of the language we want to filter.

The Results and Cost

This solution has been live in Peridot for about a month, and we've already made one round of improvements, with more to come over time. And the cost? It's basically nothing. The volume of requests we handle is within our monthly subscription which is a shared resource across all of Niantic Spatial.

What’s Next?

This is just the beginning of this experiment. As our new filter runs in production, we’re gathering more insights that we can use to fine-tune and validate different models to incrementally improve performance.

We are also considering options to eventually build a feedback loop where community-flagged content can help us continuously train and deploy better, more accurate models.

This has been a practical solution to a real-world problem, and we're continuing to learn and iterate as we go.

– Asim Ahmed (Head of Product Marketing, Spatial Solutions) and the Peridot team