Skip to main content

Creating Dynamic Content with Datasets and Variables

Updated this week

What are Datasets and Variables?

Datasets and variables let you create pages that automatically fill in different content based on a data source — without having to manually write each page from scratch. Think of it like a template: you design the page once, and the variable placeholders fill in with different values for each page automatically.

For example, you might have a dataset of 50 cities, and Psyke generates 50 unique pages — one per city — each with that city's name, local information, and relevant content.

When to Use Datasets

  • Creating location-specific pages for many cities or regions.

  • Creating product pages for a large catalogue.

  • Creating service pages for many different keywords or use cases.

Creating a Dataset

  1. In your Psyke dashboard, go to Datasets in the left sidebar.

  2. Click New Dataset.

  3. Add your columns — these become the variable names (e.g. city, region, headline).

  4. Add your rows — each row becomes a separate page.

  5. You can import rows from a CSV file by clicking Import CSV.

Using Variables on a Page

Variables are inserted into page content using double curly braces: ##{{variable_name}}. For example, if your dataset has a column called city, you can write:

We help businesses in ##{{city}} grow their online presence.

When the page is published, ##{{city}} is automatically replaced with the actual city name from each row.

Binding a Dataset to a Campaign

  1. Open a campaign and go to Settings → Dataset.

  2. Select the dataset you want to use.

  3. Psyke will generate one page per row in the dataset.

  4. Edit your page template to include the variable placeholders you need.

  5. Preview a few pages to confirm the variables are populating correctly before publishing.

Updating Your Dataset

You can add, edit, or remove rows at any time. After updating, go to your campaign and click Regenerate Pages to apply the changes.

Did this answer your question?