By Greg Nowak. Updated 9 September 2026.
When an editor needs to explain a problem with a screenshot, saving it locally, finding the upload dialog, and inserting it can interrupt an otherwise straightforward task. Multiply that across support articles, process documentation, and agency handovers, and image handling becomes a worthwhile workflow improvement.
Drupal sites using CKEditor 5 can support clipboard image uploads. The useful implementation combines that convenience with a clear rule: paste screenshots that belong to one page; use Media Library for assets that need reuse, approval, or coordinated updates. Here is how to make that rule work in practice.
Decide where an image belongs
In Drupal’s standard inline upload workflow, the image becomes a managed file referenced from the text. It does not automatically become a Media entity with a searchable library record and its own metadata. That distinction matters when someone later needs to find, review, or replace it.
I would start with the following policy, then adjust it to the team’s publishing needs. A small support team and an agency maintaining several brands may need different boundaries.
| Image use | Recommended route | Editorial responsibility |
|---|---|---|
| Screenshot explaining one support step | Inline paste | Page owner updates it when the interface changes |
| QA evidence or project handover | Inline paste, where access is appropriate | Author checks sensitive details before uploading |
| Campaign, product, or staff photography | Media Library | Asset owner maintains approval and metadata |
| Diagram used across several pages | Media Library | Owner checks affected pages when changing it |
| Screenshot that becomes a shared reference | Add it to Media Library and replace existing inline instances | Editor checks for duplicate copies |
Configure inline uploads in the format editors actually use
Start on a staging site at /admin/config/content/formats. Edit the text format used for the relevant content field. A successful test in an administrator’s Full HTML format tells you little about the everyday editor experience.
- Check the toolbar. Select CKEditor 5 and add its image control to the active toolbar.
- Enable image uploads. In the image upload settings, choose the upload directory and, where available, file storage scheme.
- Set deliberate limits. Choose a maximum file size and dimensions using representative screenshots. Drupal scales images exceeding the configured dimensions; check that small interface text remains readable.
- Check format access. Allow the roles that need this workflow to use the format, with only the HTML features their work requires.
Leaving the file-size setting empty falls back to PHP’s upload limit, which may be unsuitable for editorial use. The Drupal core upload settings document these controls.
Keep the Track images uploaded via a Text Editor filter enabled. It uses file references to resolve image URLs and supply dimensions. Preserve the associated file-reference attributes when adjusting HTML filtering. See Drupal’s image reference filter implementation.
Give reusable images a place in Media Library
Enable the core Media and Media Library modules. In the same text format, add the Media Library toolbar button and enable Embed media. Drupal recommends placing this filter last, after filters handling allowed HTML, alignment, and captions. Its CKEditor 5 media embedding guide explains the configuration.
Offer only the media types and presentation options editors need. Check their permissions to view and create the relevant media as well as their access to the text format.
Media Library provides a foundation for asset management, but the team still needs naming conventions, ownership, and any required approval workflow. Reusing a media item also makes changes consequential: before replacing its image, check whether the new version still makes sense on every page using it.
Test a complete publishing task
Ask an editor to update a real example using their normal account and browser. The acceptance test should cover the whole task:
- Paste a freshly captured screenshot, then separately test dragging a local file and using the upload button.
- Wait for the upload to finish, add useful alternative text, and save the content.
- View and reopen the page. Confirm that the image survives saving and remains editable.
- Check captions, alignment, mobile readability, and the delivered image size.
- Insert a Media Library item and check its published appearance.
- Test an oversized file and confirm that the editor receives an understandable response.
For restricted content, test the image URL directly as both an intended reader and someone without access. Include screenshots in the review for customer names, account details, and other information that should not be published.
If pasting fails, narrow down the cause
CKEditor’s upload documentation distinguishes clipboard paste, drag-and-drop, and file selection, all dependent on a working upload integration. Test those routes separately.
If file selection works but pasting fails, try a fresh screenshot rather than content copied from a web page or document. If every route fails, ask the developer to check upload responses, storage access, limits, and the active text format. If the image disappears only after saving, inspect filtering and the saved file reference.
Older tutorials may recommend ckeditor_uploadimage. Its project page identifies it with CKEditor 4 and currently lists no supported stable release. Start with Drupal’s CKEditor 5 integration for this workflow.
Make the handover as simple as the feature
Document which images editors should paste, which belong in Media Library, and who updates obsolete screenshots. Review images when reviewing the surrounding content: a file can load perfectly while showing instructions that are no longer correct.
If this workflow is slowing your team down, Greg can help define the editorial rules, brief the implementation, and coordinate acceptance testing. Bring one troublesome publishing example as a starting point. Explore working with Greg as your digital project manager.
Related on GrN.dk
- Pasting Images into Drupal: A Practical CKEditor 5 Setup
- AI disclosure rules belong in your CMS, not a spreadsheet
- AI automations need a spend dashboard before the first runaway bill
Need help with this kind of work?
Plan a smoother Drupal publishing workflow Get in touch with Greg.