# Should you migrate from Contentful?

The room usually agrees every content entry should become a record over a weekend, before anyone has named the field the page will read or opened the draft the editors are still writing.

**Published:** 2026-05-04
**Canonical:** https://synconai.com/should-i-migrate-from-contentful
**Author:** SynconAI Architecture Team

## In short

Salesforce completed the Contentful acquisition on 1 September 2026. A sandbox does not clone Contentful. Do not dump entries into records. A content entry is not a Salesforce record until someone names the field. A record already stores fields someone named. Keep the entry, copy one named value, or keep both, and say which side the page reads.

## Sources

- **Salesforce Signs Definitive Agreement to Acquire Contentful** (retrieved 2026-09-01)
  https://www.salesforce.com/news/stories/salesforce-signs-definitive-agreement-to-acquire-contentful/
  > Salesforce completed its acquisition of Contentful on September 1, 2026.

## What to take away

- The agreement that the close is a loader is compatible with a blank public page, and a sandbox refresh does not contain the entries.
- The acquisition completed on 1 September 2026. A Salesforce sandbox does not clone Contentful. That date is not a content model inside the org.
- Do not dump entries into records. A content entry is not a Salesforce record until someone names the field. A long text field is not a content model.
- The choices are keep the entry, copy one named field, or both. They are not ranked. No listing or shutdown date is invented.

## The guide

A web team was told to dump Contentful into Salesforce over a weekend. The reason was the acquisition. Every entry would become a record. Every field in the content model would become a long text area, because nobody had opened the object. Around the table everyone already agreed the export was the migration. On Monday the public page was blank. The sandbox, refreshed on Friday, did not contain the entries. The production org contained hundreds of records with no page to render them, and the editors kept writing in Contentful because that was where the draft still worked. The agreement is the problem. It is easy to reach, and it fits a loader, which is not a field anyone has named.

A blank Monday is compatible with an entry that is still a draft in a model, a record that already stores typed fields, a long text area that freezes a copy, and a completion date that does not list your fields. Only one of those is a decision about a named value. The close had been used as a loader. The loader had not named a field.

What follows are the questions that separate those explanations. Each has a good answer and a bad answer, and the difference is whether the answer names something specific: an entry, a field, a type, an editor who changed the draft yesterday. A general answer at this stage is what turns into a blank public page.

::: warn
A Salesforce sandbox does not clone Contentful. Do not dump entries into records. A content entry is not a Salesforce record until someone names the field. The completion on 1 September 2026 is not a shutdown, and no shutdown date is invented here.
:::

| Question | Who has to answer it | What a bad answer usually means |
| --- | --- | --- |
| 1. Which value is supposed to move | The editor who changed the draft yesterday | "The content" is standing in for a title, a date, or another fact |
| 2. Does the field exist, with a type | The administrator who can open the object | A custom object called Content is being treated as a content model |
| 3. What does a record already store | Whoever proposed the long text area | A paste is standing in for references, languages, and an unpublished draft |
| 4. What did the completion sentence say | Whoever used 1 September 2026 as a replatform | A date is being read as a clone of the space |
| 5. What must the plan refuse | Whoever refreshed the sandbox and called it the site | The absence of yesterday's entry is being ignored |

## 1. Which value is actually in the room?

The question is not whether to migrate Contentful. It is a title, a date, a price that must match an opportunity, or another fact a person can point at.

**A good answer sounds like** one value, named by an editor, with the entry it lives in and a statement of what that entry still owns, including the draft and any reference that has not been mapped.

**A bad answer sounds like** the content, or every entry. If you cannot name the field, the entry is not a record. You are not ready to load it. You are ready to leave the editors where they draft. A programme that starts with an export has chosen a dump. Send it back.

Contentful holds content entries. An entry belongs to a model someone designed: named values, links to other entries, and the draft editors change before a page shows it. Salesforce completed the acquisition on 1 September 2026. The product did not become a standard object. An entry is not sitting in the org under a new label. Editors still open the product by its name when that is where the draft lives. Stay when the entry is a page: a model, references to other entries, more than one language, a draft that is not published. A record stores fields. It does not become a content model because you created a custom object called Content. People who publish the site still need the entry until a page, somewhere, reads the field you named. The acquisition did not build that page.

## 2. When is an entry a record?

A content entry is not a Salesforce record until someone names the field. Move one value only after the field exists, with a type, an owner, and a statement of what the entry still owns. Moving "the campaign title, into the field on the campaign record" might be a decision, if the body of the page stays in the entry. Moving "every entry" is the blank Monday.

**A good answer sounds like** the one field that will receive a value, the type, who may edit it, and what the entry keeps, checked on the object before any export runs.

**A bad answer sounds like** a spreadsheet of entry ids with a column called record. That spreadsheet is not the comparison. If the need is "the campaign name on the record must match the title editors already use", copy that title into the field you named. Leave the page in the entry. That is one value, not a migration of the space. Do not dump entries into records. If the need is the page itself, the references, the unpublished draft, the record is the wrong destination. Creating one record per entry, with the body pasted into a long text field, freezes a copy and strands the editors. They will keep writing in Contentful. The record will lie. The public page, if it read the record, will show Friday's paste. Keep the entry until a field exists and a person has said the page reads that field.

## 3. What does a record already do?

Name the native behaviour before you compare an entry with it. A Salesforce record is a row on an object. It has fields someone named, with types: text, date, number, a lookup. You can require a field. You can report on it. You can decide who edits it. A long text field holds a block of text on that row. A file can be attached. A Knowledge article, where you use one, has a title and a body for an article someone published in the org. An administrator can see those fields. A sandbox can contain the object, because a sandbox copies metadata. That is what native records already do. They do not already contain your content entries.

The record already stores the facts you gave it fields for. It does not already know that an entry's hero is a rich text value, or that a reference points at another entry. It does not already speak every language the model speaks. It does not already publish the public page. Those mappings are decisions. They are not included in the object because the acquisition completed. A long text field is not a content model.

**A good answer sounds like** an administrator who opened the object and named one typed field, and an editor who said the draft and the references stay in the entry.

**A bad answer sounds like** a file upload called the migration. A file on a record is a file. It is not the model. It does not keep references. The quoted sentence does not name a field either. Your four lines do. If the four lines are missing, you are not choosing between a record and Contentful. You are postponing the choice and running a loader.

## 4. What did 1 September 2026 complete?

Do not migrate because the company was bought. The completion was 1 September 2026. That is a date. It is not a content model inside the org. The page cited here says the acquisition completed, and the sentence is quoted once: "Salesforce completed its acquisition of Contentful on September 1, 2026."

The sentence does not list your fields. It does not say a sandbox now contains the space. It does not give a shutdown.

**A good answer sounds like** the completion left as a date, by a named person, with the space still the place editors draft until a field is named.

**A bad answer sounds like** the close was a replatform. It is a date. The entries stay entries until a field is named. There is no end date for Contentful in the material this decision is allowed to use. Do not invent one.

A Salesforce sandbox does not clone Contentful. Refreshing a sandbox copies Salesforce metadata and, depending on the type, some CRM data. It does not copy entries, models, or the published page. Anyone who says the refresh brought the site across should open the sandbox and show the entry an editor changed yesterday. The absence is the finding. The sandbox will not do this work on refresh. It never cloned the space. Plan to keep the content platform, or name the field, but do not claim the clone already happened.

## 5. What is the plan using instead of the field?

**A good answer sounds like** a refusal, written by the editor who changed yesterday's draft, of four things: a dump of every entry, a sandbox as a clone, a listing as the model, and a ranked shortlist.

**A bad answer sounds like** a listing that replaces the space. No listing is invented here. An app that turns entries into records is not described. A catalogue page is not a decision. If a proposal cites a listing that was never named here, ask which field receives which value, and what the page reads. Until they can, the listing is a rumour. The shapes here are not ranked. Keep the entry in the content model. Copy one value into a field you have named. Keep both, and say which side the page reads. Firms are not ranked. Listings are not ranked. Two options can be compared by whether Monday's public page is blank. A league table cannot.

Stop after one value. The next value is the next decision. Cross out the entries this decision will not touch. Read the choice to the editor. If the draft has nowhere to live, the entry stays. Do not discover that after the load.

## What staying actually looks like

All five answers are measured against an alternative, and the alternative is usually left unstated, which flatters the weekend loader.

State it. Staying means editors keep the draft in the content model, the public page keeps reading the entry, and one value is copied only when a typed field exists and someone has said the page reads that field. The cost of a false move is the Monday you already had: a blank page, hundreds of records nobody can render, and editors still writing where the draft worked, while a sandbox did not contain the space.

There is a version of staying that is simply the correct decision. If the field has no name, the entry is not a record. An organisation that names the field first reaches any later load with a page that can still render.

**A good answer sounds like** the value, the field and its type, who may edit it, what the entry keeps, and a choice to keep the entry, copy that value, or keep both, with a date and a person who will open the public page.

**A bad answer sounds like** we cannot keep a content platform after the close. The acquisition completed. It did not name a field, and it did not clone the space into a sandbox.

## Where the neighbouring questions live

Cost and hiring sit on [the Contentful implementation page](/contentful-salesforce). The purchase story sits on [what happened to Contentful](/what-happened-to-contentful). The connector sits on [integrating Contentful with Salesforce](/integrating-contentful-with-salesforce).


## Questions

### Should I migrate from Contentful to Salesforce?

Only for one value you can name, into a field that already exists, with a type and an owner. Salesforce completed the Contentful acquisition on 1 September 2026. A sandbox does not clone Contentful. Do not dump entries into records. A content entry is not a Salesforce record until someone names the field.

### What is Contentful software now?

A content platform of entries in a model: named values, links to other entries, and a draft editors change before a page shows it. The acquisition completed on 1 September 2026. It did not become a standard object. No end date is given here.

### How does a content entry compare with a Salesforce record?

A record stores typed fields. A long text field holds a block of text. A Knowledge article, where you use one, has a title and a body in the org. None of those is your content model, and a sandbox does not contain the entries. Compare only after the field is named.

### What are the alternatives after the acquisition?

Keep the entry, copy one named field, or keep both and say which side the page reads. They are not ranked. No listing is invented. A dump of every entry is not an alternative.

### Where are cost, the acquisition story, and the connector?

Cost and hiring are on the implementation page. The purchase story is on the what-happened page. How an entry is delivered to a page or a record is on the integration page. No price and no shutdown date are stated here.

---

SynconAI is a Salesforce Select Partner and an OpenAI Select Partner, delivering architect-led Salesforce and AI programmes across the United States and Australia. Related service: Salesforce development (https://synconai.com/salesforce-development).