Understanding Snapchat Filter — tech and product perspective

8 min readMay 28, 2020

There is an excellent story behind Snapchat. The app which is mainly known for its filters has many reasons to invest in it. We all know people who use Snapchat just for these filters to take good and fun looking photos. But is it just for these photos, why exactly is the app investing billions on these filters, and how does it actually work?

Photo by Thought Catalog on Unsplash

Let us answer all those questions first there are broadly three reasons as to why Snapchat has kept those filters:

  • To increase user engagement
  • Get competitive edge
  • Revenue generation

But before we dive into these three points, let us understand —

How does the tech behind Snapchat filter work?

We will decode the process one step at a time rather than reading plain facts.

Imagine you are going to make a filter for Snapchat, which uses a mobile camera to apply these features.

The first step would be to understand how the feature is expected to work, i.e. you need to define your goal. Here the filter is supposed to put objects/illustrations virtually on users face, like having puppy ears and tongue sticking out of the mouth.

So the process would be — a user opens the camera, the camera would detect the face, and the filters would work their magic on the face. Now the first step would be to make sure that images captured by a camera can actually be understood and differentiated by the app.

Here we use Computer Vision and the exact area of computer vision used is called Image processing. This is the same tech which Facebook uses to tag your friends in a group photo. For a computer, an image is a collection of 0 and 1, below is an image of a person taking a selfie.

As you see, there is a fundamental problem as you are unable to detect nose or any facial features. So the image is broken into tiny sections and each section is given a value from 0 to 255, where 0 means black and 255 means white. This is done to…


Two things — Startup & Product!