The databases and supporting tools that keep our course ops running smoothly in Notion

May 2021 was a momentous time; Notion released its beta API and changed our course operations for the better.

Prior to the API, we were using Notion in our ops (of course!) but it required periodically, manually importing student and sale data to our databases.

In addition, we were hosting our forms, and all the data collected by them, outside of Notion.

Having information spread across multiple tools meant that it was hard to interconnect certain pieces. Plus, regularly having to manually import data isn’t efficient and can lead to inaccuracies!

Within the first week after the beta API was launched, I was able to streamline our workflows and move all our operations to Notion and a few supporting tools.

Here are the key Notion databases and supporting tools and integrations that keep Notion Mastery operations running smoothy:

🧑‍🎓 Student Database

The student database is the “home base” for all student related data. Every person that registers for Notion Mastery has an entry in this database and any information collected that pertains to a student is connected to this entry. If anyone on our team is looking for student information, this is the place to start.

When someone purchases the course (we use Thrivecart for our cart and Stripe for payment processing), a Zap is activated that sends the student’s full name and email from Thrivecart, to the Student database in Notion.

Example of our Zap that sends Thrivecart data to Notion.

From there, all sorts of information is related to that database entry over time, including information about any purchases they make and any forms or applications submitted by the student.

When possible, we add an image of the student to their entry in the student database (grabbed from their profile in our community hosted on Circle). With so many people in the course, it is nice to be able to put a face to a name!

I also occasionally use comments to document information on a student’s database entry. This is normally information that has been collected via email or Circle, that might be helpful to have at our fingertips in the future or help create context for my colleagues.

💰 Sales Database

The sales database receives purchase data from Thrivecart, including the students’ name and email, the name of the product they purchased, the sale price, name of an affiliate (if applicable), and discount code (if used).

In this instance, we also use Zapier to send this data from Thrivecart, straight to Notion. As new students register, I relate their purchases in the sales database to their entry in the student database.

Example of an entry in the student database that has multiple sales related to it.

I’m often asked, “Why have a separate sales database? Why not send the sales data to the Student database?” and the answer is: having a separate sales database means you can track multiple purchases from one student, without past data being overridden.

This is helpful if:

  • You have packages that allow students to upgrade e.g. They purchase Tier 1, but later on can upgrade to Tier 2 (two purchases, one student).
  • A student’s access to the course expires at a particular time, but the student has the option to pay to extend their access (two purchases, one student).

By having a separate Sales database, you can capture multiple purchases one person makes, and relate all of those purchases back to their entry in the Student database.

📄 Form Databases

Because of the number of forms we have and the number of questions asked in each form, we opt to create an individual database for each individual form.

We have application forms, intake forms, and many feedback forms. Each form has its own individual Notion database where responses are sent to. You can read more about why we structure it that way here.

All our forms are hosted in Tally which has a direct integration with Notion; this means information collected by Tally can be sent straight to Notion without having to use a third party tool like Zapier. As a Notion user, Tally’s block structure feels very familiar, so I find it intuitive to navigate and easy to integrate with Notion.

An example of Tally's block structure.

When a form is submitted in Tally, an entry is created in a Notion database, which is then manually related back to the student’s entry in the Student database.


The API has enabled us to streamline our course operations. We now rely on Notion and a few supporting tools to run the backend of our course: Notion, Tally, Thrivecart, Stripe, and Zapier. Once the data is in Notion, we use thoughtfully curated dashboards to display information in ways that support our daily, monthly, and quarterly operations workflows.

Share This Post

Share on linkedin
Share on twitter
Share on email

Sign up to get updates

    Debugging Notion

    Notion moves fast and sometimes bugs or issues can get in your way. “Notion is Buggy” is a thing we say a lot here at

    Master your life and business workflows with Notion.