Support checkboxes in tables

Hey - i’d like to use checkboxes in tables (- [ ] or - [X]) but no matter how much I try with markdown it doesn’t seem to work.

A quick Google search tells me this has been a recurring issue for years: it’s not possible to use markdown syntax in tables, so the best alternative is to use HTML.

I’ve managed to workaround using <input type="checkbox"> and <input type·"checkbox" unchecked>, but it feels super clunky and cumbersome, especially for long lists.


I hope this does become a thing. Ran into a situation where this would be super helpful as well.


Thanks for the workaround. I’ve been looking for this for a while.

thanks, @nicrivard for providing this workaround. it creates checkboxes in tabs, exactly what i was looking for. but one problem appears:

expected: i click on a box, a hook appears. i close the pane and when i open it next time the hook is in the box I clicked on.

what happens: after i click on a box, the hook appears. but when i close the pane and open it again, the hook has disappeared.

any ideas?

1 Like

I have the same problem. I want to use this input tag (type checkbox) in table to create a check-list. But whenever I’ve done something, I have to open the edit display and put “checked” in the tag (instead of check the box in preview display).

This is realy cumbersome.


@nicrivard is there some sort of best practice argument against using checkboxes in a markdown table, do you know? I wasn’t aware this had been such a long-standing issue (I would really like checkboxes in my tables too) and am curious to understand whether you had extra background on this.

I’m in the same boat as you here :man_shrugging:t2: Maybe someone in the discord community can help with more context?

I was not sure whether this is a feature or a bug (I guess it could be both).

At the moment Obsidian does not properly render to do’s inside a table, i.e. this:

|	Slot	|	Planned	|	Actual	|	Posture	|	Notes	|
|	----------	|	----------	|	----------	|	----------	|	----------	|
|	`13:30`	|	#PKM-BASB-Autumn-Cohort-11 	|		|	`sitting`	|	catch up on forums<br> [x] look for upcoming mentor sessions	|
|	`13:45`	|	#PKM	|		| `sitting`		|	trial new interstitial diaries	|
|	`14:00`	|	`----------------------`	|		|		|		|
|	`14:15`	|	#SSM-OPS-ActiveCampaign-Launch-Q3-2020 	|		|	`sitting`	|	work on the welcome email	|

shows up as this:

it would be amazing if we could tick / untick todos that are placed inside tables in the same way that we use them elsewhere.


Thank you for the workaround!

Will there be a real solution to this some time in the future?

+1 It will be great to have this feature in the future.

One workaround that I just tested out is putting the checkboxes on lines elsewhere in the page or on another page and embedding these checkbox blocks into the table. This allows you to check off the checkboxes from within the table itself. See here for an example:


Adding my support for this feature.

Having stateful checkboxes is a crazy useful feature, but it can be frustrating to use within the confines of an unordered list. Even if the input was limited to the first column of a table it’d make the checkbox much more useful, I think.

Does this break Markdown compatibility too much?

1 Like

That would be a killing feature.

That work for me as well.