Skip to main content

Why you should never attach documents in a SharePoint list

I see this happening again and again – users attach documents in a SharePoint list. Yes, you can do it – but that is not what SharePoint list was designed for. It is like making pancakes with an iron. As a matter of fact – there are some very strong reasons for you not to continue this poor business practice. Let me explain.

Just to set the stage for what I am talking about, in SharePoint, there is a concept of a list and a library. In case you require clarification on the difference between the two, check out this post.

SharePoint Document Library, by default, allows to store and organize, you guessed it, documents (files). If you have a document to store – you would just upload one (or many) into a document library. And of course, you can organize them via folders or metadata.

SharePoint List, on another hand, is used for storing non-document information (think of it as Excel in SharePoint) – table of rows and columns of some information. This could be a list of events, properties, clients, projects, tasks, etc.

The thing is that SharePoint lists also allow you to attach documents (files) to a given list item. Say you have a list of projects or clients in a SharePoint list, you can attach the file(s) to a given item.attach documents in a SharePoint list

Attachment option in a “classical” SharePoint List

attach documents in a SharePoint list

Attachment option in a “modern” SharePoint List

Eventually, you can also end up with an item that has multiple attachments associated with it.

attach documents in a SharePoint list

Now that we are clear on the difference and the mechanism of the two, let me explain why you should not use SharePoint lists to store attachments.

Reason 1: Lack of Document Management features

By default, SharePoint list is not a document library and, as a result, lacks all the document management features of a document library, like versioning, check-in/check-out, co-authoring, ability to open and edit documents in the browser, etc.

Reason 2: Lack of Version History on the attached files

While you do have a version history functionality on the item in the list itself (if you enable versioning on the list), it does not carry over to the attached files. For example, if you have an item at Version 1 with two attachments, then make a change to an item and delete one of the attachments, if you decide to go back (restore) Version 1 again, it will only have 1 attachment, not the 2 it had originally. You would need to remember to go to the Recycle Bin and restore deleted attachments from there!

Reason 3: No way to organize attachments or apply document specific metadata

Since attachments just sit together attached to an item, there is no way to organize them in folders or apply file-specific metadata (like you can in the document library). I hope this is obvious!

attach documents in a SharePoint list

Reason 4: Can’t upload multiple attachments at once (classical list only)

This depends on whether you use classical SharePoint list or a modern one. In classical SharePoint custom lists and other “classical” web parts like Calendar, Tasks, Issues, Announcements, etc, you can only attach one file at a time. With the modern SharePoint lists (think Custom List), this is not an issue, you can upload many at once, no problem.

attach documents in a SharePoint list

Reason 5: List Attachments are Ignored by Search

This other reason is here because of my loyal blog follower and fellow SharePoint Consultant Ellen van Aken from Holland. She advised me about it once she saw an original post, so I added it here now. That has got to be one of the primary reasons against list attachments – the fact that those attachments are ignored by search! Let me explain.

When you upload documents to a document library, the SharePoint search engine crawls the documents and indexes them (just like Google does), so you can later search by keyword and find the documents in your site or library. Well, if you upload your documents as attachments into a list item, none of this happens! They are just ignored by search! So, whether you conduct a search at a list level or site level – these documents are “invisible” to SharePoint Search. The search will only find text and metadata you have on a SharePoint list itself (columns). Oy Vey!

How can I prevent people from uploading attachments to a SharePoint list?

Option 1: Training

Education, my friend, education. Knowledge is power! While you can turn off attachments on a list (like I describe below), you won’t remember to do it on every single list you have in your environment. So make sure to properly educate your users (share this post with them) and educate and train them before they screw it up for you!

Option 2: Turn off attachments in a list

It is very easy to disable attachments on a SharePoint list. And something I do every time I configure a list for my clients. To disable attachments in a list:

  1. Go to List Settings > Advanced Settings
  2. Scroll to the middle of the page to Attachments section and choose Disabled radio button
  3. Click OK

Should I never use SharePoint lists for storing documents?

Just like with any other situation in life, it depends. In most cases, it would be wise to not use SharePoint lists for storing files and working documents. However, there are certain situations where this might be beneficial. Say, for example, you have built a Help Desk system in SharePoint, and it is, of course, a SharePoint list (say, Issues log). So when users submit a ticket, you might want them to also attach screenshots to help IT solve the helpdesk request. So leave attachments on in that case.

However, anytime you need to store MS Office documents or other files for say a client or a project, and especially when you wish to store multiple documents, you are better off using good old SharePoint document libraries.

What if I need to store both the list information and documents, what do I do?

Use Document Sets!

In case you have one-to-many sort of relationship, where, say, you have a client list and some documents that need to be associated with a client, the option I would highly recommend is Document Set.

Document Set functionality allows you to create folder level metadata (your SharePoint list metadata essentially) and attach files to each document set (i.e., Client). In a way, you end up with a folder (document set) for each client or project and then corresponding documents inside of each folder. On top of that, all files stored within a document set inherit metadata from the folder! So it is almost like having a SharePoint List with attachments, except, done properly!

List of folders (document sets) with metadata (in place of a SharePoint List metadata)

Contents of a Document Set. Files are organized using metadata and benefit from all the available document management capabilities

If you want to familiarize yourself with the magic of document setscheck out this post which explains what they are all about and how to set them up.

You may also like

How to create a custom list in SharePoint

June 20th, 2018

You may also like

How to share files and folders externally in SharePoint

June 13th, 2018

You may also like

Why you need to follow sites in SharePoint

June 6th, 2018

Need SharePoint Help?

Hourly consulting, training and configuration services are available

Learn More