Skip to main content
Supported on
Snapchat

Developer FAQ

What are Web Lenses?​

Web Lenses let developers package a web experience and publish it as a Lens that runs inside Snapchat. The overview explains how it works.

What can I build?​

You can build games, interactive stories, tools, toys, and other web experiences. Games are the initial focus, but Web Lenses aren't limited to games.

Do I need Lens Studio?​

No. Snap designed Web Lenses for developers who want to use familiar web technologies. Review the documentation for packaging, supported capabilities, and submission requirements.

How do I publish a Web Lens?​

Package your web app according to the platform requirements, then submit it through the Web Lenses section of My Lenses. Build your first Web Lens walks through the whole process, and Publishing covers the upload and review.

Which Snapchat capabilities are supported?​

The first release of the Web Lens API covers Bitmoji, leaderboards, and persistent storage. Check that page for the current API list and implementation requirements.

Can I use any web framework?​

Snap strongly recommends PlayCanvas, its own HTML5 game engine, for building Web Lenses. You can also use other web frameworks and engines.

Whatever tools you choose, your Lens must meet the Web Lens runtime, packaging, security, and platform requirements. Review Capabilities and restrictions, and test your Lens before you submit it.

What limitations should I plan for?​

A Web Lens runs inside the Snapchat webview, so not every browser capability is available. Review Capabilities and restrictions before you start building, and test the final build on a phone before you submit it. Build your first Web Lens shows how.

Where can I get help?​

Join the games channel on the Lens Studio Discord to ask questions and share works in progress, and attend the launch-week office hours.

How should I share feedback?​

Use the launch feedback survey and report issues in the Web Lens support channel. Include your device, Snapchat app version, project type, submission step, and any error message.

Was this page helpful?
Yes
No