Fixed monthly

A look at how a database-as-a-service product would model their plans and features in PlanGraph

Introduction

In this example, we'll profile a database-as-a-service company called JakeDB. They offer a hosted database service that has several plans that increase in price based on the amount of storage your database requires.

The features that JakeDB want to display for every plan are:

  • Storage

  • Memory

  • Number of connections

  • Support included

  • Data visualization

  • Dedicated IP address

Each JakeDB has a fixed amount of Storage, Memory, and Connections. Their telephone support is costly and is only available to their most expensive plan. The remaining features vary based on the amount of database storage selected.

The following is a representation of what JakeDB wants to display on their pricing page as a plan table:

Features

Small

Medium

Large

Storage

250mb

1gb

5gb

Memory

128mb

256mb

1gb

Connections

10

15

50

Support included

Email ticketing

Email ticketing

Dedicated telephone

Data visualization

Suggested feature value types

Each value may use a different type based on the context of what feature and plan combination it is being defined for.

Feature

Type

Reasoning

Storage

Numeric

A fixed value of storage is included

Memory

Numeric

A fixed value of memory is included

Connections

Numeric or Text

A fixed amount of connections is included, except for the cheapest tier where they are shared

Support included

Text

Text can be used to describe what kind of support is included with your database

Data visualization

Include

A checkmark is shown on all plans to show that every user gets access to this feature

Defining your plans and features

Once we have created a JakeDB product we can begin adding plans and features using the Plan Builder:

Plans

Name

Slug

Base Cost

Small

sm

10

Medium

md

25

Large

lg

100

Plans defined for JakeDB

Features

Name

Slug

Storage

storage

Memory

memory

Connections

connections

Support included

support

Data visualization

dataviz

Features defined for JakeDB

Values

Plan

Feature

Type

Value

Display Value

Small

Storage

Numeric

250

250mb

Medium

Storage

Numeric

1024

1gb

Large

Storage

Numeric

5120

5gb

Small

Memory

Numeric

128

128mb

Medium

Memory

Numeric

256

256mb

Large

Memory

Numeric

1024

1gb

Small

Connections

Numeric

5

Medium

Connections

Numeric

15

Large

Connections

Numeric

50

Small

Support included

Text

Email ticketing

Medium

Support included

Text

Email ticketing

Large

Support included

Text

Dedicated telephone

Small

Data visualization

Include

Included

Medium

Data visualization

Include

Included

Large

Data visualization

Include

Included

Values defined for JakeDB

Now you're ready to publish your pricing!