Migrations copy posts and forget SEO. Titles, meta descriptions, focus keywords, and social tags sit in Yoast’s own fields. The Import WP Yoast SEO add-on maps those columns (or XML nodes) in the same importer as the content, so you are not rebuilding on-page SEO by hand after a bulk load.
Free add-on — works with the free Import WP plugin. Use Pro if you need scheduled re-imports or ACF alongside Yoast.
Import Yoast SEO from CSV
Enable the Yoast fields on Template Fields and map:
- SEO title
- Meta description
- Focus keyphrase
- Any other Yoast meta you actually store in the spreadsheet (for example canonical or robots, if present)
A typical migration CSV is post_title, content, yoast_title, yoast_desc, focus_kw. Unique identifier stays on the post (slug, SKU, or ID) so a second run migrates Yoast SEO titles onto existing posts instead of creating duplicates.
This is also how you bulk import meta descriptions in WordPress when the copy lives in a content sheet, not in wp-admin.
Open Graph, Twitter, and social tags
Social previews are separate fields. Map Open Graph title, description, and image, plus Twitter equivalents when the export includes them. Images use the same attachment pipeline as featured images: URL in, Media Library item out, then Yoast stores the reference.
If the OG image is the featured image, you can map both from one URL or leave social image empty and let Yoast fall back — match the behaviour you want after import, do not assume the theme will guess.
Run Yoast in the same importer as content or products
Do not run a “SEO only” import unless the posts already exist. Pair Yoast mapping with:
- Posts, pages, and CPTs (core templates)
- WooCommerce products for product SEO titles
- Rank Math only if the site uses Rank Math, not both plugins on the same field set
Install / setup · Optional Pro: pricing.
