# Overview of Content Types

### About this export

| Field | Value |
| --- | --- |
| **content_type** | lesson |
| **platform** | contentstack-academy |
| **source_url** | https://www.contentstack.com/academy/learning-paths/cms-content-manager-certification/structuring-content-in-contentstack/overview-of-content-types |
| **course_slug** | structuring-content-in-contentstack |
| **lesson_slug** | overview-of-content-types |
| **learning_path_slug** | cms-content-manager-certification |
| **markdown_file_url** | /academy/md/learning-paths/cms-content-manager-certification/structuring-content-in-contentstack/overview-of-content-types.md |
| **generated_at** | 2026-04-28T06:55:50.796Z |

> Lesson in **[Structuring Content in Contentstack](https://www.contentstack.com/academy/learning-paths/cms-content-manager-certification/structuring-content-in-contentstack)** within the **cms-content-manager-certification** learning path on Contentstack Academy. **Academy MD v3** — structured for retrieval; no quiz or assessment keys.

<!-- ai_metadata: {"lesson_id":"01","type":"video","duration_seconds":405,"video_url":"https://cdn.jwplayer.com/previews/Yo2tjKM4","thumbnail_url":"https://cdn.jwplayer.com/v2/media/Yo2tjKM4/poster.jpg?width=720","topics":["Overview","Content","Types"]} -->

#### Video details

#### At a glance

- **Title:** Overview Of Content Types
- **Duration:** 6m 45s
- **Media link:** https://cdn.jwplayer.com/previews/Yo2tjKM4
- **Publish date (unix):** 1755871196

#### Streaming renditions

- application/vnd.apple.mpegurl
- audio/mp4 · AAC Audio · 113669 kbps
- video/mp4 · 180p · 180p · 179691 kbps
- video/mp4 · 270p · 270p · 225852 kbps
- video/mp4 · 360p · 360p · 299953 kbps
- video/mp4 · 406p · 406p · 348427 kbps
- video/mp4 · 540p · 540p · 486541 kbps
- video/mp4 · 720p · 720p · 736025 kbps
- video/mp4 · 1080p · 1080p · 1448038 kbps

#### Timed text tracks (delivery)

- **thumbnails:** `https://cdn.jwplayer.com/strips/Yo2tjKM4-120.vtt`

#### Transcript

Every headline, image, and button you see on a content-stack-powered website has a hidden skeleton. That skeleton is called the content model, the master blueprint of everything your digital experience can show. Inside that model live the content types, individual molds for each kind of page or component. Think of the model as an entire Lego set while each content type is a single brick you can reuse anywhere. When the model is solid and your bricks are well-designed, your content is reusable across channels, faster to publish, consistent for every creator. If you mess up the structure, even the smallest change becomes a headache. That's why before we type a single word or upload a single image, we start with content types. Let's ground this with a simple example, a blog page. Visually, the page shows a title, a description, an image, and a publish date. In ContentStack, we capture that pattern once by building a blog page content type containing a title, which is a text field, a description, which is a multi-line text field, an image, which is an asset field, and a publish date, which is a date field. Save that schema and you've created the mold. Every new blog post is now an entry poured into the same mold, perfectly consistent every time. So creating a content type is like casting a reusable mold. Once the mold exists, anyone, a developer or marketer, can crank out perfectly shaped content without touching code. That's the magic of structured content. While developers typically create new content types, since they also need to build the front end that displays them, it's still valuable for content creators to understand how they work. Just to clarify, the front end refers to the presentation layer, like a web page or an app screen. Without that, a content type is really just a storage structure. It holds the content, but there's no way to display it. Still, knowing how content types are built helps you better understand how ContentStack works, even if you're not writing any code yourself. So let's walk through how to build one. In your stack, open Content Models and click the New Content Type button and from the menu, choose Create New. This will open the Create New Content Type dialog box. Fill in the name as Blog Page, Description, Schema for All Blog Posts, UID, Blog Icon, Blog Underscore Page. Best practice is to use lowercase with underscores, and you'll notice it auto-generates that for you. For type, choose Multiple because you want to use this content type for more than one entry. More on that a bit later. Click Save and proceed. Now let's drop in our four fields for this content type. First, Title, which is there by default, which is a single-line text box, but you're free to modify any of these default settings. Okay, let's add a multi-line text box for the description, and we can add that display name. Also, notice the ID populates for you. We'll leave the rest of the elements, like the placeholder value, instruction value, and help text empty for this demo. If you want more details on what each of those fields represent, you can hover over the question mark to get a tooltip explanation. Next, let's add a File field. Just place your cursor under the Description text field to see the Add element appear. Choose File and label it Image. This will allow us to upload images to our assets. Finally, let's add a Date field so we can capture a date using a date widget, and we can label it Date. Grab the handles on the left to arrange the fields, or click this icon to reopen the properties to make any adjustments. Finally, when you're done, click Save and Close, and then the schema is locked in. The moment we hit Save, Content Stack lets the team start adding entries. Authors focus on words and images, the structure takes care of consistency. So let's just recap some terms and what they mean. First, Field. It's a building block inside a content type, like text, assets, or dates. An asset is any media file you upload, whether it be a JPEG, PDF, or MP4. An entry is a piece of content created from a content type. UID is a unique identifier that keeps everything distinct in the system. A few best practices to keep in mind. UIDs. Keep them lowercase with underscores and under 200 characters. Examples. Use clean, human-readable names like blog page, opposed to blog page without a space. Descriptions. Spell the purpose out so team members know exactly when to use each type. You've now seen how a single content type fits into the larger content model and why that matters for speed, scale, and sanity. Again, this was more about understanding the structure behind the content model so you can better understand how Content Stack operates as you create, modify, and delete content in your stacks.

#### Subtitles (WebVTT)

```webvtt
WEBVTT

1
00:00:00.000 --> 00:00:10.640
Every headline, image, and button you see on a content-stack-powered website has a hidden

2
00:00:10.640 --> 00:00:12.200
skeleton.

3
00:00:12.200 --> 00:00:18.880
That skeleton is called the content model, the master blueprint of everything your digital

4
00:00:18.880 --> 00:00:21.960
experience can show.

5
00:00:21.960 --> 00:00:28.000
Inside that model live the content types, individual molds for each kind of page or

6
00:00:28.000 --> 00:00:29.400
component.

7
00:00:29.400 --> 00:00:36.520
Think of the model as an entire Lego set while each content type is a single brick you can

8
00:00:36.520 --> 00:00:39.360
reuse anywhere.

9
00:00:39.360 --> 00:00:45.920
When the model is solid and your bricks are well-designed, your content is reusable across

10
00:00:45.920 --> 00:00:51.800
channels, faster to publish, consistent for every creator.

11
00:00:51.800 --> 00:00:57.760
If you mess up the structure, even the smallest change becomes a headache.

12
00:00:57.760 --> 00:01:05.160
That's why before we type a single word or upload a single image, we start with content

13
00:01:05.160 --> 00:01:06.520
types.

14
00:01:06.520 --> 00:01:11.320
Let's ground this with a simple example, a blog page.

15
00:01:11.320 --> 00:01:19.300
Visually, the page shows a title, a description, an image, and a publish date.

16
00:01:19.300 --> 00:01:27.320
In ContentStack, we capture that pattern once by building a blog page content type containing

17
00:01:27.320 --> 00:01:34.120
a title, which is a text field, a description, which is a multi-line text field, an image,

18
00:01:34.120 --> 00:01:39.280
which is an asset field, and a publish date, which is a date field.

19
00:01:39.280 --> 00:01:43.380
Save that schema and you've created the mold.

20
00:01:43.380 --> 00:01:50.040
Every new blog post is now an entry poured into the same mold, perfectly consistent every

21
00:01:50.040 --> 00:01:51.640
time.

22
00:01:51.640 --> 00:01:56.920
So creating a content type is like casting a reusable mold.

23
00:01:56.920 --> 00:02:02.200
Once the mold exists, anyone, a developer or marketer, can crank out perfectly shaped

24
00:02:02.200 --> 00:02:05.040
content without touching code.

25
00:02:05.040 --> 00:02:08.480
That's the magic of structured content.

26
00:02:08.480 --> 00:02:14.240
While developers typically create new content types, since they also need to build the front

27
00:02:14.240 --> 00:02:21.320
end that displays them, it's still valuable for content creators to understand how they

28
00:02:21.320 --> 00:02:22.320
work.

29
00:02:22.480 --> 00:02:27.880
Just to clarify, the front end refers to the presentation layer, like a web page or an

30
00:02:27.880 --> 00:02:29.200
app screen.

31
00:02:29.200 --> 00:02:33.760
Without that, a content type is really just a storage structure.

32
00:02:33.760 --> 00:02:37.760
It holds the content, but there's no way to display it.

33
00:02:37.760 --> 00:02:44.360
Still, knowing how content types are built helps you better understand how ContentStack

34
00:02:44.360 --> 00:02:49.360
works, even if you're not writing any code yourself.

35
00:02:49.360 --> 00:02:53.240
So let's walk through how to build one.

36
00:02:53.240 --> 00:03:01.000
In your stack, open Content Models and click the New Content Type button and from the menu,

37
00:03:01.000 --> 00:03:02.880
choose Create New.

38
00:03:02.880 --> 00:03:07.040
This will open the Create New Content Type dialog box.

39
00:03:07.040 --> 00:03:19.040
Fill in the name as Blog Page, Description, Schema for All Blog Posts, UID, Blog Icon,

40
00:03:19.040 --> 00:03:21.160
Blog Underscore Page.

41
00:03:21.160 --> 00:03:29.520
Best practice is to use lowercase with underscores, and you'll notice it auto-generates that

42
00:03:29.520 --> 00:03:31.560
for you.

43
00:03:31.560 --> 00:03:37.880
For type, choose Multiple because you want to use this content type for more than one

44
00:03:37.880 --> 00:03:39.080
entry.

45
00:03:39.080 --> 00:03:41.700
More on that a bit later.

46
00:03:41.700 --> 00:03:43.840
Click Save and proceed.

47
00:03:43.840 --> 00:03:48.120
Now let's drop in our four fields for this content type.

48
00:03:48.200 --> 00:03:54.040
First, Title, which is there by default, which is a single-line text box, but you're free

49
00:03:54.040 --> 00:03:57.400
to modify any of these default settings.

50
00:03:57.400 --> 00:04:04.480
Okay, let's add a multi-line text box for the description, and we can add that display

51
00:04:04.480 --> 00:04:05.480
name.

52
00:04:05.480 --> 00:04:08.720
Also, notice the ID populates for you.

53
00:04:08.720 --> 00:04:13.960
We'll leave the rest of the elements, like the placeholder value, instruction value,

54
00:04:13.960 --> 00:04:17.000
and help text empty for this demo.

55
00:04:17.000 --> 00:04:21.520
If you want more details on what each of those fields represent, you can hover over

56
00:04:21.520 --> 00:04:25.120
the question mark to get a tooltip explanation.

57
00:04:25.120 --> 00:04:28.520
Next, let's add a File field.

58
00:04:28.520 --> 00:04:34.560
Just place your cursor under the Description text field to see the Add element appear.

59
00:04:34.560 --> 00:04:38.360
Choose File and label it Image.

60
00:04:38.360 --> 00:04:42.440
This will allow us to upload images to our assets.

61
00:04:42.680 --> 00:04:49.440
Finally, let's add a Date field so we can capture a date using a date widget, and we

62
00:04:49.440 --> 00:04:52.160
can label it Date.

63
00:04:52.160 --> 00:04:59.760
Grab the handles on the left to arrange the fields, or click this icon to reopen the properties

64
00:04:59.760 --> 00:05:02.120
to make any adjustments.

65
00:05:02.120 --> 00:05:10.600
Finally, when you're done, click Save and Close, and then the schema is locked in.

66
00:05:10.600 --> 00:05:17.440
The moment we hit Save, Content Stack lets the team start adding entries.

67
00:05:17.440 --> 00:05:23.760
Authors focus on words and images, the structure takes care of consistency.

68
00:05:23.760 --> 00:05:27.120
So let's just recap some terms and what they mean.

69
00:05:27.120 --> 00:05:28.840
First, Field.

70
00:05:28.840 --> 00:05:34.800
It's a building block inside a content type, like text, assets, or dates.

71
00:05:34.800 --> 00:05:41.440
An asset is any media file you upload, whether it be a JPEG, PDF, or MP4.

72
00:05:41.440 --> 00:05:46.880
An entry is a piece of content created from a content type.

73
00:05:46.880 --> 00:05:54.080
UID is a unique identifier that keeps everything distinct in the system.

74
00:05:54.080 --> 00:05:57.440
A few best practices to keep in mind.

75
00:05:57.440 --> 00:05:58.720
UIDs.

76
00:05:58.720 --> 00:06:03.760
Keep them lowercase with underscores and under 200 characters.

77
00:06:03.760 --> 00:06:04.760
Examples.

78
00:06:04.760 --> 00:06:13.560
Use clean, human-readable names like blog page, opposed to blog page without a space.

79
00:06:13.560 --> 00:06:14.560
Descriptions.

80
00:06:14.560 --> 00:06:20.760
Spell the purpose out so team members know exactly when to use each type.

81
00:06:20.760 --> 00:06:26.480
You've now seen how a single content type fits into the larger content model and why

82
00:06:26.480 --> 00:06:30.240
that matters for speed, scale, and sanity.

83
00:06:30.240 --> 00:06:35.840
Again, this was more about understanding the structure behind the content model so you

84
00:06:35.840 --> 00:06:43.440
can better understand how Content Stack operates as you create, modify, and delete content

85
00:06:43.440 --> 00:06:44.440
in your stacks.

```

```transcript
<!-- PLACEHOLDER: replace with real transcript before publish if cues were auto-derived from WebVTT -->
[00:00] Every headline, image, and button you see on a content-stack-powered website has a hidden
[00:10] skeleton.
[00:12] That skeleton is called the content model, the master blueprint of everything your digital
[00:18] experience can show.
[00:21] Inside that model live the content types, individual molds for each kind of page or
[00:28] component.
[00:29] Think of the model as an entire Lego set while each content type is a single brick you can
[00:36] reuse anywhere.
[00:39] When the model is solid and your bricks are well-designed, your content is reusable across
[00:45] channels, faster to publish, consistent for every creator.
[00:51] If you mess up the structure, even the smallest change becomes a headache.
[00:57] That's why before we type a single word or upload a single image, we start with content
[01:05] types.
[01:06] Let's ground this with a simple example, a blog page.
[01:11] Visually, the page shows a title, a description, an image, and a publish date.
[01:19] In ContentStack, we capture that pattern once by building a blog page content type containing
[01:27] a title, which is a text field, a description, which is a multi-line text field, an image,
[01:34] which is an asset field, and a publish date, which is a date field.
[01:39] Save that schema and you've created the mold.
[01:43] Every new blog post is now an entry poured into the same mold, perfectly consistent every
[01:50] time.
[01:51] So creating a content type is like casting a reusable mold.
[01:56] Once the mold exists, anyone, a developer or marketer, can crank out perfectly shaped
[02:02] content without touching code.
[02:05] That's the magic of structured content.
[02:08] While developers typically create new content types, since they also need to build the front
[02:14] end that displays them, it's still valuable for content creators to understand how they
[02:21] work.
[02:22] Just to clarify, the front end refers to the presentation layer, like a web page or an
[02:27] app screen.
[02:29] Without that, a content type is really just a storage structure.
[02:33] It holds the content, but there's no way to display it.
[02:37] Still, knowing how content types are built helps you better understand how ContentStack
[02:44] works, even if you're not writing any code yourself.
[02:49] So let's walk through how to build one.
[02:53] In your stack, open Content Models and click the New Content Type button and from the menu,
[03:01] choose Create New.
[03:02] This will open the Create New Content Type dialog box.
[03:07] Fill in the name as Blog Page, Description, Schema for All Blog Posts, UID, Blog Icon,
[03:19] Blog Underscore Page.
[03:21] Best practice is to use lowercase with underscores, and you'll notice it auto-generates that
[03:29] for you.
[03:31] For type, choose Multiple because you want to use this content type for more than one
[03:37] entry.
[03:39] More on that a bit later.
[03:41] Click Save and proceed.
[03:43] Now let's drop in our four fields for this content type.
[03:48] First, Title, which is there by default, which is a single-line text box, but you're free
[03:54] to modify any of these default settings.
[03:57] Okay, let's add a multi-line text box for the description, and we can add that display
[04:04] name.
[04:05] Also, notice the ID populates for you.
[04:08] We'll leave the rest of the elements, like the placeholder value, instruction value,
[04:13] and help text empty for this demo.
[04:17] If you want more details on what each of those fields represent, you can hover over
[04:21] the question mark to get a tooltip explanation.
[04:25] Next, let's add a File field.
[04:28] Just place your cursor under the Description text field to see the Add element appear.
[04:34] Choose File and label it Image.
[04:38] This will allow us to upload images to our assets.
```

#### Key takeaways

- Connect **Overview of Content Types** back to your stack configuration before moving to the next module.
- Capture one concrete artifact (screenshot, Postman call, or code snippet) that proves the step works in your environment.
- Re-read the delivery versus management boundary for anything you changed in the entry model.

## Supplement for indexing

### Content summary

Overview of Content Types. Overview of Content Types in Structuring Content in Contentstack (structuring-content-in-contentstack).

### Retrieval tags

- Overview
- Content
- Types
- structuring-content-in-contentstack
- lesson 01
- Overview of Content Types
- structuring-content-in-contentstack lesson

### Indexing notes

Index this lesson as a primary chunk tagged with lesson_id "01" and topics: [Overview, Content, Types].
Parent course slug: structuring-content-in-contentstack. Use asset_references URLs as thumbnail hints in search results when present.
Never surface LMS quiz content or assessment answers from this file.

### Asset references

| Label | URL |
| --- | --- |
| Video thumbnail: Overview of Content Types | `https://cdn.jwplayer.com/v2/media/Yo2tjKM4/poster.jpg?width=720` |

### External links

| Label | URL |
| --- | --- |
| Contentstack Academy home | `https://www.contentstack.com/academy/` |
| Training instance setup | `https://www.contentstack.com/academy/training-instance` |
| Academy playground (GitHub) | `https://github.com/contentstack/contentstack-academy-playground` |
| Contentstack documentation | `https://www.contentstack.com/docs/` |
