dataclean.to

Convert CSV Data to Recipe Schema Markup

✓ Tested Works with CSV, Excel, Google Sheets → JSON-LD Schema
By dataclean.to team · 2026-02-13

Recipe schema markup produces some of the most visually distinctive rich results in Google Search — images, star ratings, cooking times, calorie counts, and ingredient previews directly in the search listing. Food bloggers, recipe publishers, and culinary databases managing recipe collections in CSV spreadsheets can convert their data into validated Recipe JSON-LD using dataclean.to, which handles the unique normalization challenges of cooking data: duration formats, ingredient parsing, and nutrition value standardization.

The Problem

Recipe data stored in spreadsheets has formatting patterns that are specific to the culinary domain. Cook times appear as "30 min", "1.5 hours", "45 minutes at 350°F", or separate columns for prep, cook, and total time. Ingredient lists are either comma-separated in a single cell or spread across multiple columns ("ingredient 1", "ingredient 2", etc.). Nutrition values mix units: "250 cal", "250 kcal", "15g fat", "15 grams of fat." Yield formats include "4 servings", "Makes 12", "2 loaves." Schema.org Recipe requires ISO 8601 durations ("PT30M"), structured NutritionInformation objects, and recipeIngredient arrays — none of which match the raw spreadsheet formats. Recipe schema type specification

How to Fix It

1
Upload your recipe CSV
Import your CSV containing recipe data. Include columns for recipe name, description, prep time, cook time, total time, ingredients, instructions, yield/servings, nutrition information, image URLs, and any ratings or review data.
2
Detect recipe-specific data patterns
dataclean.to identifies duration fields (even in natural language), ingredient lists (single-cell or multi-column), nutrition values with units, image URLs, and rating data. Each detected type receives appropriate cleaning rules.
3
Normalize durations and nutrition
Convert all time values to ISO 8601 duration format: "30 minutes" becomes "PT30M", "1 hour 15 min" becomes "PT1H15M". Nutrition values are standardized into structured format with numeric values and consistent units for calories, fat, carbohydrates, protein, and other nutrients.
4
Map columns to Recipe schema properties
Map your cleaned columns to Recipe properties: name, description, image, prepTime, cookTime, totalTime, recipeIngredient (as array), recipeInstructions (as HowToStep objects), recipeYield, nutrition (as NutritionInformation), and aggregateRating.
5
Generate Recipe JSON-LD
Export JSON-LD for each recipe with properly structured ingredients arrays, HowToStep instructions, NutritionInformation, and ISO 8601 durations. Test with Google's Rich Results Test to confirm recipe card eligibility.

Frequently Asked Questions

How should ingredients be formatted for Recipe schema?
Recipe schema expects recipeIngredient as an array of strings, where each string is a complete ingredient entry (e.g., '2 cups all-purpose flour'). If your CSV has ingredients in a single cell separated by commas or line breaks, dataclean.to splits them into individual array entries. If they're in separate columns, each column becomes one array entry.
What time formats does Google require for Recipe schema?
Google requires ISO 8601 duration format for prepTime, cookTime, and totalTime. Examples: PT30M (30 minutes), PT1H (1 hour), PT1H30M (1 hour 30 minutes), PT45M (45 minutes). dataclean.to converts natural language time expressions into this format automatically.
Can I include step-by-step instructions in the schema?
Yes. If your CSV has a column with recipe instructions, they can be mapped to recipeInstructions as either a single text block or structured HowToStep objects (if the instructions are numbered or separated). Structured steps are preferred by Google for recipe rich results.

Example: Input → Output

nameprep_timecook_timeservingscalories
Pasta Carbonara15 min20 min4650
pasta carbonaraPT15MPT20M4650 cal

Red rows show common data quality issues. dataclean.to normalizes and generates JSON-LD automatically.

{
  "@context": "https://schema.org",
  "@type": "Recipe",
  "name": "Pasta Carbonara",
  "prepTime": "PT15M",
  "cookTime": "PT20M",
  "recipeYield": "4 servings",
  "nutrition": {"@type": "NutritionInformation", "calories": "650 calories"}
}
💡 How it works: Recipe schema can trigger rich results with prep time, ratings, and calorie info in Google Search.

Ready to Clean Your Data?

Upload your CSV or spreadsheet and get clean, structured data in minutes.

Get Started Free

Related Use Cases

Schema Generation
Csv To Schema Markup
Schema Generation
Csv To Json Ld
Schema Generation
Csv To Restaurant Schema
Schema Generation
Clean Data For Rich Snippets