Quiz profiles

Turn every quiz answer into a customer profile

Save structured quiz responses to the Shopify customer so the theme, support team, account area, and connected tools can use the same information later.

150,000+
quiz fields processed across 7,600+ customer profiles.
Why they built it

The quiz already had the useful data

The store asked shoppers about each dog before recommending food. Breed, age, current weight, ideal weight, activity level, and health needs all affected the recommendation.

Those answers remained useful after the quiz too: for the next order, a support question, the account experience, or a later product suggestion.

The store used FieldsRaven to save the answers as a Shopify customer metafield. Multiple pets could live under one customer account, with a separate set of details for each dog.

The result

Years of quiz answers, on records the merchant already owned.

150,000+
Quiz fields processed

Across 7,600+ customer profiles. FieldsRaven processing fields are not a count of unique shoppers.

150,000+ quiz fields processed across 7,600+ customer profiles. The profile can grow as the customer gives the merchant more information, while the merchant remains responsible for its quiz and recommendations.

Copy the starter code

The data shape, and one call.

snippets/pet-profile.liquid
const cfg = window.FR_CUSTOM__CUSTOMER_QUIZ_PROFILE;
const payload = {
  pets: [{ name: "Beans", breed: "Labrador", activity_level: "active" }]
};

await fetch("/apps/raven/create_metafield", {
  method: "PUT",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    raven: {
      raven_id: cfg.ravenId,
      resource_id: cfg.resourceId,
      raven_mac: cfg.ravenMac,
      value: JSON.stringify(payload)
    }
  })
});

Call this from a validated form-submit handler. Defining the starter does not write illustrative data when the page loads.

A JSON save replaces the full metafield value. Load the current profile, apply an edit, and send the full updated object.

Get Code supplies the Liquid configuration and inline HMAC. A successful response means FieldsRaven accepted the request; the Shopify write continues asynchronously.

Common questions

Before you wire it up.

Do I need to replace my quiz?
No. Keep the merchant's quiz and use its validated answers to build the JSON value sent to FieldsRaven.
Where is the profile stored?
The starter stores it in a Shopify customer metafield. The Raven supplies the customer resource, namespace, key, and value type.
Does the shopper need an account?
Yes. This customer-resource pattern needs a signed-in shopper so the generated configuration can identify that customer.
Can the answers reach Klaviyo?
Eligible customer fields can be queued for Klaviyo when that setting is configured on the Raven. Acceptance is not proof that the later sync has completed.

Keep the answers your quiz already collects

Create the customer Raven and connect it to your form. Then test the first profile on your own store.