CRM system in Markdown in Obsidian

I’m using Obsidian for smart notes and also as a simple CRM since it’s so handy and already open all the time.

I create a GitHub Repository to help with sharing of this idea and would like some feedback and help in making it better.

How do you use Obsidian for CRM functionality and what ideas do you have to make this better.

CRM Template:

File name: @Contact Name - Company Name
Contents:

aliases: “First_name”, “Last_name”, “email”, “(phone”]

Created: Date

Title

Full name


Contact Info

Full name
Title
Company
Address Line
City, ST, ZIP

Email:
Phone:

www.website.org


Log

Date - Summary

Notes

11 Likes

Good stuff! I’ve been thinking about this a few times in the past months, and started using Obsidian for CRM late last year. What I find I write down in my crm in obsidian is also things like how I connected to someone. That context is what is missing from e.g. LinkedIn. The subjective info I often find more important than the objective stuff like contact details (which lives in my mail archive and phone anyway), or meeting logs. What I haven’t looked at, but what would be good to create I think is use yaml stuff and e.g. status-tagging with the Dataview plugin to pseudo-automate things. For instance I have a habit that I approach 2 commercial contacts every week outside my current scope of client interaction, just to hear how they’re doing. Tracking a list of contacts I haven’t been in touch with for a while to choose from each week will be helpful.

Some things about home-brew CRM I wrote late 2019 Homebrew CRM – Interdependent Thoughts
Personal CRM as not-LinkedIn from last month Personal CRM as a Not-LinkedIn – Interdependent Thoughts

1 Like

Why put “Created” in the body instead of in YAML? I’m trying to figure out a good structure for a CRM-like system in Obsidian and trying to optimize for dataview usage.

I’m a teacher and tutor. The C in CRM for me is both parent and child.

Messages from WhatsApp are quite siloed.

To get around this, I’m debating to draft messages to parents in Obsidian and tag the message with the child’s name. This way, I can link customer notes in with anything else.

You must have a wealth of experience. What do you like the most?

After months of research and development in Obsidian, I switched to Nection as personal CRM

3 Likes

Why Nection? What features stand out for Nection for you?

I would like a non-Obsidian tool to do the contact information and have Obsidian be just the free form notes separate from a CRM tool, but to date that does not exist.

1 Like

I am also seeking to build a personal CRM of sorts in Obsidian.
I have created notes for each person/household- i.e. John Smith

In my daily notes I record interactions with people like this:

  • called John Smith to see how they are doing.

Is there a way to create a table using dataview (or some other option) to see all the content of each paragraph in daily notes that contain the link to that person/household? And filter by year?

Also, I would love to have another table listing each person/household based on my last interaction with them (to see who I haven’t contacted recently)

Thanks in advance for any help!

1 Like

So far, Obsidian is great for journaling.

I have a template with 30 min time slots, and in each time slot I enter what happened:

09:30

  • #prospecting > #I_called [[@John Smith]] from [[@Obsidian.md]]

And I note what happened either in the @John Smith node or the company node.

It would be great if I could create tasks that sync with my todoist in both directions.

I’m thinking about returning to the notion of CRM features and the possibility of using automation.

How about your templates? Do you have any? How do you use obsidian as CRM?

3 Likes

i keep it simple with a template for meeting notes and project updates. Haven’t delved into crm territory yet, but your approach is inspiring.

I’m experimenting with a page per person e.g., [[@johnsmith]] (the @ making it super-quick to identify a person in the list of pages.)

I add interactions as a bullet point in my daily journal which avoids switching contexts.

In the person page I have this query (which I didn’t write) which finds all pages that are linked and the context of the link (I.e. the bullet point.) It’s essentially the same content as backlinks but I much prefer the appearance and they can appear at the top of the note rather than the bottom.

I want to make it more sophisticated to separately list a) open tasks referring to that person b) completed tasks referring to that person.

dataview
TASK
WHERE contains(file.outlinks, this.file.link)
WHERE !completed

What I use. Clearly the task will need to reference the CRM contact you are looking to collate the tasks in.

1 Like

I’ve ended up with these queries:

Tasks (open and completed)

TASK
WHERE contains(text, this.file.name) AND contains(text, "[[")
SORT file.mtime desc

(You could remove the check for [[ and get all instances of the text in a task, whether linked or not. It’s caught a couple of instances for me.)

Records

TABLE WITHOUT ID link(file.link, title) as "Reference", L.text as "Context"
FROM [[]]
FLATTEN file.lists as L
WHERE !L.task
WHERE contains(this.file.inlinks, file.link) and contains(L.text, this.file.name)
SORT file.mtime desc

This captures all bulleted items which link to this person. It works brilliantly if you make notes about people in your daily notes.

1 Like

I remember when I was experimenting with it for personal productivity. One thing I found handy was creating templates for different tasks and events. For instance, when I needed CRM-like features, I played around with integrating Obsidian with tools like sugar crm. It took some trial and error, but eventually, I figured out a workflow that synced tasks bidirectionally with Todoist. It’s all about finding what works best for your unique setup!