Fit guide

Contentful DAM integration

Short answer

A Contentful DAM integration is an app that lets editors pick approved DAM assets inside Contentful entries and keeps those assets current when the DAM changes. Contentful offers two routes: copy files into Contentful assets, or reference DAM files through the App Framework. Fact: Contentful's Images API resizes images up to 4,000 pixels per side.

What a Contentful DAM integration must do

A Contentful DAM integration must give editors approved assets in the entry editor and keep every reference valid until the asset is withdrawn.

FunctionDirectionWhy it matters
Pick in the entry editorDAM to ContentfulEditors search the DAM inside the field and skip download and upload
Store the referenceDAM to ContentfulThe entry keeps the DAM asset ID, so updates and expiry can be traced
Deliver renditionsDAM or Contentful to channelsWebsites and apps receive the right size and format
Carry metadataDAM to ContentfulAlt text, credits and rights travel with the asset
Update and withdrawDAM to ContentfulNew versions appear, and expired assets leave every channel
Report usageContentful to DAMThe DAM shows which entries use each asset

Contentful is a headless CMS: it stores structured content and delivers it through APIs. The DAM vs CMS guide explains why a CMS asset library makes a weak DAM. The DAM integrations guide places the CMS among the other DAM connections.

How Contentful models assets

Contentful models assets as their own content type: a file plus metadata, linked from entries and published separately.

  • Fact: an asset holds files such as images, videos, audio or PDFs, usually attached to entries with links.
  • Fact: creating an asset takes three steps through the Content Management API: create, process and publish.
  • Fact: assets can be localised with a separate file for each locale.
  • Fact: published images are served from images.ctfassets.net, and EU data residency customers use images.eu.ctfassets.net.
  • Fact: the Images and Assets APIs serve published assets publicly, without a token.
LimitValue from Contentful documentation
Asset file size50 MB on Free plans, 1,000 MB on paid plans
Image size100 MB per image
Images API resizeUp to 4,000 pixels per side
Images API formatsjpg, png, webp, gif, avif and tiff
AVIF source imagesUp to 9 megapixels
Locales500 per environment
Content Management API10 calls per second per space on paid plans

The Images API makes Contentful its own delivery layer. A DAM that copies files into Contentful gets resizing, cropping and format conversion through URL parameters. A DAM that keeps files outside Contentful delivers through its own image CDN.

How the App Framework connects a DAM

The Contentful App Framework connects a DAM through frontend apps in the editor and backend apps that act on events.

App Framework elementWhat a DAM connector can doFact from Contentful documentation
Frontend app locationsShow a DAM picker inside the editorApps render in an iFrame in seven locations: Entry Field, Entry Sidebar, Entry Editor, Page, Home, App Configuration and Dialog
Backend app identityUpdate assets and entries from a serverBackend apps call the Content Management API under their own identity
App eventsReact to publish and save eventsBackend apps subscribe to events in their installed environment
MarketplaceInstall a partner-built DAM appMarketplace apps install free of charge from the Contentful web app
Native external referencesLink DAM assets as resources in a reference fieldAvailable on Premium plans and above, resolved through the GraphQL Content API

Fact: Contentful Marketplace publishing is open to a select group of technology and integration partners. A DAM app outside the Marketplace installs as a custom app, which the buyer's team or the vendor hosts.

Integration patterns for Contentful

Contentful DAM integrations follow three patterns, and each pattern sets who stores the file and who serves it.

PatternHow it worksDeliveryTrade-off
Copy into Contentful assetsThe picker or a sync creates Contentful assets from DAM renditionsContentful CDN and Images APITwo copies of every file, and the sync must cover updates and expiry
Reference in an entry fieldAn Entry Field app stores the DAM asset ID, delivery URL and selected metadataDAM CDNOne copy, and stored metadata goes stale unless the app refreshes it
Native external referencesA resource type for DAM assets, resolved by a function at query timeDAM CDN, data through GraphQLCurrent data on every query, with a Premium plan requirement

DAMSelection assessment: the reference pattern fits most organisations with a mature DAM, because rights and versions stay in one system. The copy pattern fits teams that want Contentful's Images API for all web images. The headless DAM guide covers the delivery architecture behind both.

Worked example: a migration copies 40,000 images into Contentful. Each asset needs three calls: create, process and publish. At 10 calls per second, 120,000 calls take at least 12,000 seconds, about 3.3 hours, before retries.

What must stay in sync with Contentful

Five changes in the DAM must reach Contentful within a stated time: new versions, rights expiry, deletions, metadata and alt text per locale.

DAM changeCopy patternReference pattern
New versionUpload, process and republish the Contentful assetDAM URL serves the new file, and the app refreshes stored metadata
Rights expiryUnpublish and archive the Contentful assetDAM URL stops serving, and the app flags entries that still link it
DeletionDelete the Contentful assetApp flags or clears the field
Metadata changeUpdate asset fields and republishApp refreshes stored values
Alt text per localeWrite each locale's value to the assetRead each locale's value from the DAM at render or refresh

Fact: archiving or deleting a Contentful asset removes its files from the CDN, but files may remain reachable for up to 48 hours. A rights expiry handled through the copy pattern must start at least 48 hours before the end date. Usage rights records in the DAM need that lead time as a field.

Fact: Contentful sends a save webhook when an entry or asset changes through the Content Management API or an app. Fact: failed webhooks retry up to two more times, about 30 seconds apart, and a timed-out request is not retried. The DAM vendor needs a reconciliation job for missed events.

Alt text belongs in the DAM per language. The accessibility and alt text guide covers that source model. Contentful's per-locale fields can hold each language, so the connector maps DAM languages to Contentful locales.

The four depth levels for Contentful

DAMSelection rates Contentful integration depth on the same four levels as every other platform, based on who builds and maintains the connector.

LevelWhat it means for ContentfulEvidence DAMSelection accepts
4 Native connectorApp built and maintained by the DAM vendorVendor documentation or a Contentful Marketplace listing by the DAM vendor
3 Partner or marketplace connectorApp built by a third partyMarketplace listing naming the developer
2 Documented API patternDAM guide for a custom Contentful appPublished developer guide
1 Custom build onlyNo app or guideExplicit statement that a custom build is required

Vendor ratings appear on vendor profiles once verified. The integrations overview explains the scale for all platforms.

What to test in a Contentful demo

A Contentful demo tests the asset loop in a sandbox space with the buyer's own content model, locales and assets. Add these steps to the scripted demo.

  1. Install the DAM app and show which app locations it uses.
  2. Open an entry and pick an approved image from the DAM with three facets.
  3. Show what the field stores: asset ID, URL, metadata or a Contentful asset link.
  4. Pick a DAM master above 4,000 pixels and show the delivered rendition size.
  5. Show alt text in two locales on the delivered asset.
  6. Replace the image with a new version in the DAM and show the website result.
  7. Expire the rights on the image and show the entries the app flags.
  8. Delete an asset in the DAM and show the result in Contentful.
  9. Show the DAM usage report listing the entries that use the asset.
  10. Try to pick an asset outside the editor's DAM role and show the block.

The Demo Script Generator formats the steps as a scenario. The panel scores each step pass or fail against criteria written before the demo.

Common failure points

Contentful DAM integrations fail at five points that a buyer checks before signature.

  • Stale copies: copied assets keep old files and metadata when the sync covers only new assets.
  • CDN lag: archived or deleted files may stay reachable for up to 48 hours.
  • Missed events: three webhook attempts over one minute leave gaps without a reconciliation job.
  • Locale gaps: alt text in the DAM covers fewer languages than the Contentful locales.
  • Hosting ownership: a custom app hosted by the buyer needs an owner, monitoring and updates.

Questions for the DAM vendor

The buyer sends these questions in writing and asks for documentation with each answer.

  1. Which pattern does the Contentful app use: copy, field reference or native external references.
  2. Is the app listed on the Contentful Marketplace, and who hosts and supports it.
  3. Which app locations does the app use, and which permissions does it request.
  4. How does the app refresh stored metadata, and how often.
  5. How does the app handle rights expiry and deletion in entries that use the asset.
  6. How does the app map DAM languages to Contentful locales for alt text.
  7. Which Contentful plan does the pattern require.

Frequently asked

Can Contentful replace a DAM?

Contentful can store and deliver web images, but its asset model holds no rights records, approval workflows or rendition presets. Organisations with a few hundred web images often manage in Contentful alone. Organisations with campaign, product and brand libraries across channels add a DAM.

How do DAM images get into Contentful?

DAM images reach Contentful in one of two ways: copied as Contentful assets through the Content Management API, or referenced from a field through a DAM app. The copy uses Contentful's CDN and Images API. The reference uses the DAM's delivery layer and keeps one copy of each file.

Does a Contentful DAM app need a Premium plan?

The Contentful App Framework overview names no plan requirement for standard app locations such as Entry Field and Dialog. Native external references, which resolve DAM assets through the GraphQL Content API, are available on Premium plans and above. The buyer confirms the plan with both vendors.

How fast do deleted assets leave the Contentful CDN?

Deleted or archived Contentful assets can stay reachable on the CDN for up to 48 hours, according to Contentful's Content Management API documentation. A rights expiry process must start early enough to cover that window. DAM-hosted references stop serving when the DAM withdraws the file.

Can a DAM set alt text per language in Contentful?

A DAM can set alt text per language in Contentful when the connector maps each DAM language to a Contentful locale. Contentful supports up to 500 locales per environment. The buyer tests two locales in the demo and checks the delivered output.

Sources

Run your selection with PIMvendors

Vendor-neutral DAM selection with scripted demos on your own assets.

Book a selection call