Model for using airtable for multiple projects

I have played around with importing my trello board and making one base.

I have the sense that I could use airtable instead of 12 trello boards to track work in different projects.

What I would like is the ability to see a timeline that unites multiple tables (projects) and allows me to edit dates or other info about records where I think they will be in different tables or bases.

I feel at this point I’d do better seeing a model of something akin to this than trying to read lots of templates or theory articles.

Does this sound familiar?

My main needs:
replace multiple trello boards
create views by timeline or kanban of distinct tables/bases
possibly collaborate with a few people
be able to edit or MOVE records based on certain views. i.e. something that is “writing” becomes part of “podcasting” or “research” which are I think distinct tables.

1 Like

Hey @jordi_comas

In Airtable, you would create a single table for all Projects.

Each record in this table is a single Project.

(don’t create 12 tables - create 12 records and each is your Project)

You would then create another table with Tasks that uses a Linked record field type to your Projects table. Projects are your broad overarching projects (Website Design) while Tasks are the multiple tasks you need to complete for a Project (buy domain, add images, set up hosting, etc.)

Now that you have the Tables set up, create Views inside the tables and use filters to drill down to see exactly what you want to see.

Here’s an example:

Projects table

Tasks table

Kanban view of the Tasks table filtered by a specific Project

It might help to tinker with this Project Tracker base template by Airtable. You’ll probably be able to get set up just by using this. :smiley:

Hey @jordi_comas! Welcome in!

I may have just totally misunderstood your needs, so please feel free to let me know if I’m completely missing something.
I went ahead and just pulled out all the stops and created a small example of how I might lay things out.

It can be pretty jarring for people when getting their hands on Airtable because tables are distinctly different from how you might think of a sheet within a spreadsheet.

With that in mind, an excellent way to think about data modeling for your use case might be to think about what types of records you’ll be creating and what data they’ll be holding.


If you’re curious to see what it looks like or want to copy the base, here’s a link to the base.

Your Table Layout

From how I understand it, you have two distinct types of records.
Tasks and their respective “projects.”

So with that in mind, we need two tables to hold those distinct record types.

I have created these tables in the base I built in my playground.

Now, each record in the Tasks table will only hold individual tasks that need to be done. This is regardless of whether or not they’re related to the same project.

This is the same in the Projects table, where each record is a new project.

Okay, but then how do I organize and sift through everything?

This is where one of Airtable’s foundational designs comes into play!
Airtable is a relational database, which means that we can associate records with each other.

The advantage here is that when you get to a point where you have a ton of data, you can track an immense amount of data without having to worry about it all getting mixed up and unorganized.

We will put that into practice in this small, isolated environment.


Projects

In the Projects table, we have three records for major projects my theoretical team might be working on.
In this case, we’ll focus on my Empire Building project.
Here I have some crucial information, such as my notes on the project itself and the overall stage that the project is in.
In this case, Empire Building is in the Backlog stage.

(You’ll also find that there’s another field in there called Completion Status.
It’s a bit complex, so I’ll explain it at the end as a piece of bonus content.)


Tasks

In the Tasks table, we hold individual records for every task that we want to keep track of.

However, the problem we quickly run into is organization.
I can have a million tasks but no way to keep track of everything.

Airtable offers a few ways for us to organize records, but we want to focus on linking these tasks to the Projects they belong to.

You’ll notice that there is a linked record field called Project on the far right.
When you create a new task record, you’ll be able to search for the project it belongs to and then establishes the link between the two records.

We can use the Grouping feature to group the records by their respective Projects.
In this case, they’re grouped into the three projects we saw in the Projects table.

In addition to the linked record field, we also have task status, notes, and start/completion dates.


Views

Views are low-key rather wild.
There’s an insane amount of things that you can do with them, and it can be a bit overwhelming while you’re getting comfortable with them.

For this example base I’ve created, I have a few examples we can look at that seem along the lines of what you’re looking for.

image

Here I’ve organized my views into Sections.
You’ll see sections for each primary project, as well as an overview grid view with all the tasks displayed.

Here we have the Timeline view.
From the grid view, I’ve set the start and end date configurations to be the respective start and goal completion dates.
I’ve also set the view to display at the annual quarter level.

As my last example view, I’ve made a quick Kanban view that is filtered to only display the Empire Building related tasks.


Now For Some Clean Up

When you establish a link between one record to another (in this case, we created a link from the tasks to the projects), you aren’t creating a one-way link.
It works both ways.

I had a linked record field hidden in the view in my previous screenshot of the Projects table.
This was automatically created when I created the linked field in the Tasks table.

This means that you do not have to go through the linking process two times to do the same thing in the Projects table.

It may seem simple, but I’ve seen many people do it.

Hey! What’s with the Completion Status field?!

This one is just me kind of messing around since I like to use community forum posts to have fun and experiment with my data modeling, formulas, automations, etc.

In addition to the hidden linked record field, I had four other hidden fields in the view.

These are rollup fields.
Rollup fields are one of the ways you can actually pull data from the other table you linked to.
In this case, I can take data from the Tasks table and use it in the Projects table.

The Completion Status field is a formula field that takes the information from the Tasks table and creates a little status message for you about all of the tasks associated with a project.

In this case, it just gives you a breakdown of the task statuses.

Here’s the (strange, possibly poorly written) formula that powers that field if you’re curious.

IF(
    OR(
        {Total},
        {In Progress},
        {Complete},
        {Not Started}
    ),
    IF(
        {Total},
        IF(
            {Total} = 1,
            {Total} & " Task Total",
            {Total} & " Total Tasks"
        )
    ) &
    IF(
        {In Progress},
        "\n" & {In Progress} & " In Progress"
    ) &
    IF(
        {Complete},
        IF(
            {Complete} = 1,
            "\n" & {Complete} & " Complete",
            "\n" & {Complete} & " Completed"
        )
    ) &
    IF(
        {Not Started},
        "\n" & {Not Started} & " Not Started"
    )
)

Wait a second! I saw another formula field in the Tasks table!

If you look at the primary field of the Tasks table records, you’ll notice that it is also a formula field.

This formula takes the record data and compiles it into a quick & easy to read format (for me at least) that keeps me from finding all of the data in a record. This allows me to get high-level information by glancing at the primary field.

Again, it’s mostly me just experimenting.
If you’re curious, here’s the formula:

IF(
    {Task},
    {Task} & "\n",
    "⚠ Missing Task Name!"
)

&

IF(
    
    AND(
        {Started},
        {Goal Completion}
    ),
    "Start: " &
    DATETIME_FORMAT(
        {Started}, 'l'
    ) & "\n" &
    "Goal Date: " &
    DATETIME_FORMAT(
        {Goal Completion}, 'l'
    ),

    IF(
        AND(
            {Started},
            {Goal Completion} = 0
        ),
        "Start: " &
        DATETIME_FORMAT(
            {Started}, 'l'
        ),
        IF(
            AND(
                {Started} = 0,
                {Goal Completion}
            ),
            "❗ Missing Start Date!"
        )
    )
)

But seriously, please let me know if I’m being stupid and missed something or if you have any additional questions.

This topic was solved and automatically closed 15 days after the last reply. New replies are no longer allowed.