WordPress comes built-in with six different user roles, and Contributor is the second to least powerful of them..
Just as you might suspect, any user who is assigned the role of Contributor can create and edit posts under their own byline. In other words, a Contributor can only write and edit posts under their own name but not publish them. Once a post is published, a Contributor cannot edit or delete it, even if they wrote it themselves.
Note: Contributors cannot upload media files!
For WordPress administrators, the Contributor role is perfect for active users who want to create content on your site. In other settings, the Contributor role would be known as a “guest blogger” role because it allows individual people not associated with operating and administering your website to produce independent content. Keep in mind, however, that Contributors cannot publish their own posts, so there is more editorial oversight needed for the Contributor role.
Note: User roles come pre-defined by WordPress, but they can be modified, and new user roles can be created. This might be useful if, say, you wanted the Contributor role to also be able to upload media for use in their posts. The easiest way to do this without having to dig into the core code of WordPress is through the use of a plugin.