Bulk Recipe Import
Import multiple recipes at once using a CSV file.
Available on: All plans
CSV File Format
Create a CSV file with the following columns. Only recipe_title is required.
Required Column
| Column | Description |
|---|---|
recipe_title |
Recipe name (required) |
Basic Information
| Column | Description |
|---|---|
recipe_author |
Author name |
recipe_description |
Recipe description |
recipe_category |
Category (e.g., "Desserts", "Main Course") |
recipe_cuisine |
Cuisine type (e.g., "Italian", "Mexican") |
recipe_image |
Image URL (must be publicly accessible) |
recipe_image_alt_text |
Alt text for the image |
Recipe Content
| Column | Description |
|---|---|
recipe_ingredients |
Ingredients (see format below) |
recipe_directions |
Directions (see format below) |
recipe_tags |
Comma-separated tags |
recipe_note |
Additional notes |
recipe_video |
Video URL (YouTube, Vimeo, etc.) |
Times and Servings
| Column | Description |
|---|---|
prep_time |
Prep time (e.g., "15" or "15 minutes") |
cook_time |
Cook time (e.g., "30" or "30 minutes") |
serving_size |
Number of servings |
Nutrition
| Column | Description |
|---|---|
recipe_calories |
Calories per serving |
nutrition_data |
Full nutrition data (JSON format) |
nutrition_serving_size |
Nutrition serving size label |
Blog Post Linking
| Column | Description |
|---|---|
blog_id |
Shopify blog ID to create post in |
article_id |
Existing Shopify article ID to link |
status |
1 = Published, 2 = Draft (default: 1) |
Other Settings
| Column | Description |
|---|---|
enable_rating |
Enable ratings (true/false) |
Formatting Ingredients
Format ingredients as a comma-separated list:
"1 cup flour, 2 eggs, 1/2 cup sugar, 1 tsp vanilla extract"
Or use JSON format for more control:
[{"quantity":"1","unit":"cup","ingredient":"flour"},{"quantity":"2","unit":"","ingredient":"eggs"}]
Formatting Directions
Format directions as numbered steps separated by periods or newlines:
"Preheat oven to 350°F. Mix dry ingredients. Add wet ingredients and stir. Bake for 25 minutes."
Or use JSON format:
[{"direction":"Preheat oven to 350°F"},{"direction":"Mix dry ingredients"},{"direction":"Bake for 25 minutes"}]
How to Import
- Go to Settings
- Scroll to Bulk CSV Upload
- Click Choose File and select your CSV
- Click Upload CSV
- Wait for processing to complete
A progress indicator shows how many recipes have been processed. You'll see success or error messages for each recipe.
Tips for Successful Imports
- Test with a small file first - Try 5-10 recipes before importing hundreds
- Use publicly accessible image URLs - Images must be reachable from the internet
- Check for duplicate titles - Recipes with existing titles will be skipped
- Verify blog IDs - If linking to blogs, ensure the blog ID is correct
- Use UTF-8 encoding - Save your CSV with UTF-8 encoding for special characters
Common Errors
| Error | Solution |
|---|---|
| "Recipe with this title already exists" | Change the title or delete existing recipe |
| "Invalid image URL" | Ensure the image URL is publicly accessible |
| "Blog not found" | Verify the blog_id is correct |
Sample CSV
recipe_title,recipe_description,recipe_ingredients,recipe_directions,prep_time,cook_time,serving_size,recipe_category
Chocolate Chip Cookies,Classic homemade cookies,"2 cups flour, 1 cup butter, 1 cup sugar, 2 eggs, 1 cup chocolate chips","Mix dry ingredients. Cream butter and sugar. Add eggs. Combine all ingredients. Bake at 375°F for 10 minutes.",15,10,24,Desserts
Banana Bread,Moist and delicious,"3 bananas, 1/3 cup butter, 3/4 cup sugar, 1 egg, 1 tsp vanilla, 1 cup flour","Mash bananas. Mix in melted butter. Add sugar, egg, vanilla. Fold in flour. Bake at 350°F for 60 minutes.",10,60,8,Breads
What's Next?
- Creating Recipes - Manual recipe creation
- Recipe Status and Visibility - Publishing options
- Linking Blog Posts to Recipes - Blog integration