Create ML refusing your data, misreading labels, or failing to import? This guide covers the most common training-data errors and exactly how to fix each one before you train.
Most Create ML problems happen before training even starts. The tool is particular about how data is structured, and small mistakes cause confusing failures.
The good news is these errors are usually mechanical and easy to fix once you know what Create ML expects. They are rarely deep machine learning problems.
This guide walks through the frequent offenders: wrong folder structure, malformed data files, label mismatches, unreadable files, and empty or duplicated data.
Work through them in order. Fixing structure and labels first prevents a lot of downstream confusion in evaluation and prediction.
For image and some other classifiers, Create ML expects a specific folder layout: one parent folder containing one subfolder per label, with samples inside each subfolder.
A common mistake is dragging in the subfolders individually, or dragging a folder that has an extra nesting level. Create ML then reads labels incorrectly or finds nothing.
Drag in the single parent folder, and confirm the labels Create ML detects match your subfolder names exactly. If it shows the wrong labels, your nesting is off by a level.
Also watch for stray files. Hidden system files or a stray document mixed in with images can trip up import. Keep each label folder clean.
For text and tabular data, you often supply a structured file. Malformed files are a top cause of import failure.
Check that your CSV has consistent columns in every row. A row with an extra comma, an unescaped comma inside a text field, or a missing value can break parsing.
For text with commas, quotes, or line breaks, make sure fields are properly quoted so the parser reads each sample as one field. Unquoted messy text is a frequent culprit.
Confirm your file encoding is standard UTF-8. Unusual encodings or invisible characters copied from other tools can cause errors that are hard to see by eye.
When Create ML shows unexpected labels, the cause is almost always inconsistency in your data.
Watch for casing and whitespace. Positive, positive, and positive with a trailing space are three different labels to the tool, splitting your data across phantom categories.
Normalize your labels before importing. Pick one exact spelling and casing for each class and apply it everywhere.
For structured files, double-check you pointed Create ML at the correct label column. Selecting the wrong column is a quick way to get nonsense categories and meaningless training.
Import can fail if some files are corrupt or in an unsupported format. One bad image in a folder of thousands can be enough.
Confirm your images are in standard, supported formats and are not truncated or zero-byte. A file that will not open in Preview will not train either.
For audio in sound classification, verify the files are valid and consistent. Mixed or unusual formats can cause trouble.
When you cannot find the culprit by eye, remove data in halves and retry — a quick binary search that isolates the offending file fast. Then replace or delete it.
Create ML needs enough valid data per class to train, and it needs the split to make sense. Too little data triggers errors or produces a useless model.
Confirm every class actually has samples after import. An empty label folder or a class with only a handful of rows can break training or wreck accuracy.
Remove exact duplicates. Duplicated samples that appear in both training and testing inflate accuracy dishonestly and can confuse the split.
If a class is simply too small to support a train and test split, gather more examples or reconsider whether that category belongs in this version of the model.
A quick pre-flight check saves hours. Before hitting Train, verify a few things in the Create ML interface.
Confirm the detected label list matches your intended classes exactly, with no surprise entries from typos or casing.
Confirm the per-class counts look balanced and non-empty, and that your columns are mapped correctly for structured data.
Only then train. Catching a structural problem now is far cheaper than discovering it after a long training run and a confusing evaluation.
A surprising number of import errors and confusing results trace back to a mismatch between your data and the template you picked, rather than to a malformed file.
Each Create ML template expects data shaped for its task. An image classifier wants folders of images by label; a text classifier wants text paired with labels; a tabular model wants rows of named columns with a target column. Feeding one template data formatted for another produces errors or nonsense.
Before you import, restate what you are actually predicting and confirm the template matches. If you are labeling whole images, image classification fits. If you need to locate objects within an image, that is object detection, and the annotations look completely different.
Watch the column mapping step for structured data especially closely. Selecting a numeric identifier as a feature, or pointing the target at the wrong column, yields a model that trains but learns the wrong thing. The import may succeed while the setup is quietly wrong.
When results look strange despite a clean import, step back and ask whether the template, the columns, and the prediction goal all agree. Realigning them is often the real fix, and it is far cheaper than repeatedly reformatting files that were never the problem.
Occasionally the problem is not your data but your setup. Create ML is macOS-only and part of Apple's developer tooling.
Make sure you are running a current, compatible version of macOS and Xcode. Very old or mismatched versions can cause odd behavior.
If the app itself misbehaves, a restart or reopening the project can clear transient issues, and confirming you have enough free disk space matters for larger datasets.
It also helps to work with a small sample first. Import a handful of examples per class, confirm the whole pipeline behaves, and only then bring in the full dataset. Debugging a structural issue on ten files is far quicker than on ten thousand.
Remember the tool's boundaries throughout. Create ML only trains models — it does not build or ship your app. Fixing data errors gets you a clean training run; Xcode and the Apple Developer Program handle everything after the model exists.
Almost always inconsistent labels — differences in casing or trailing whitespace create phantom categories — or a wrong label-column selection in a structured file. Normalize your labels and confirm the correct column.
Usually the folder structure. Create ML expects one parent folder containing one subfolder per label. Drag in the parent folder, not the subfolders individually, and remove stray or hidden files.
Confirm files open in standard apps and are not zero-byte. If you can't spot it, remove data in halves and retry importing — a binary search quickly isolates the offending file.
Verify consistent columns in every row, properly quoted text fields containing commas or line breaks, and standard UTF-8 encoding. Unescaped commas inside text are a common cause.
Usually not. Most import and label errors are mechanical data-formatting issues, not modeling problems. Fix the structure and labels first, then evaluate model quality separately.