A wedding guest book template that people actually fill in

Updated 2026-10-30

A paper guest book gets a signature and a line about the food. People want to say more, but the page is small and the queue is long. I would give guests a link, so they can write properly, in their own time.

Who it is for

Couples who want longer notes than a signature, and planners who build a keepsake from guest messages.

What each question is for

  • How you know the couple: so you read each note in context.
  • Message: the heart of the book, with room for a proper note.
  • Advice: the old tradition of marriage advice, kept alive.
  • Favourite memory: stories you would never hear otherwise.
  • Date night idea and first year wish: small ideas you can use.
  • Photo link: a link to a picture the guest took, because the form cannot take uploads.
  • Read aloud tick: so you know which notes are private.

What a guest's AI would ask

"How do you know the couple?" Then "What would you like to say to them?" Then "Is there a memory you want to share?" It shows all answers and waits for a yes. Learn about agent-fillable forms.

Before you use it

Print the link on a table card or in the order of service. Pair it with a song request form and a wedding RSVP form. Working with a planner? A wedding consultation form opens that conversation. See forms for weddings and forms for events.

Questions

Can guests write their note before the wedding?

Yes. The link works whenever the form is open. Send it with the invitation or share it on the day, and set close_at a week after to catch late notes.

How do I turn the CSV into a keepsake?

Open the CSV in a spreadsheet and copy the message columns into a document. Print it or paste it into a photo book. The form does not make a PDF.

What if a guest does not want their note read out?

A tick box asks whether you may read their message aloud. Check that column before you read anything at the reception.

Try the form

Live demo ยท nothing is saved

Leave a note for the couple

Write whatever you would say if you had the microphone. We will read every word.

How do you know the couple?
You may read my message aloud

Or paste the JSON

Give this to your AI. It needs the AI Form API MCP server or an API key. It makes the form and sends you the link.

text
Create this form with the AI Form API create_form tool (or POST https://aiformapi.com/v1/forms with my API key). Then reply with the public_url.

{
  "title": "Leave a note for the couple",
  "description": "Write whatever you would say if you had the microphone. We will read every word.",
  "fields": [
    {
      "id": "guest_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 120
    },
    {
      "id": "know_couple_how",
      "label": "How do you know the couple?",
      "type": "single_choice",
      "options": [
        "Family",
        "Childhood friend",
        "School or university friend",
        "Work",
        "Neighbour",
        "Other"
      ]
    },
    {
      "id": "message_to_couple",
      "label": "Your message to the couple",
      "type": "long_text",
      "required": true,
      "max_length": 3000
    },
    {
      "id": "marriage_advice",
      "label": "Your advice for a happy marriage",
      "type": "long_text",
      "max_length": 1000
    },
    {
      "id": "favourite_memory",
      "label": "A favourite memory with one of them",
      "type": "long_text",
      "max_length": 1500
    },
    {
      "id": "date_night_idea",
      "label": "A date night idea for them",
      "type": "short_text",
      "max_length": 200
    },
    {
      "id": "first_year_wish",
      "label": "A wish for their first year together",
      "type": "short_text",
      "max_length": 200
    },
    {
      "id": "photo_link",
      "label": "Link to a photo you took today",
      "type": "url",
      "help": "The form cannot take uploads, so share an album link instead."
    },
    {
      "id": "read_aloud_ok",
      "label": "You may read my message aloud",
      "type": "checkbox"
    }
  ]
}

Or call the API

bash
curl -X POST https://aiformapi.com/v1/forms \
  -H "Authorization: Bearer $AIFORMAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Leave a note for the couple","description":"Write whatever you would say if you had the microphone. We will read every word.","fields":[{"id":"guest_name","label":"Your name","type":"short_text","required":true,"max_length":120},{"id":"know_couple_how","label":"How do you know the couple?","type":"single_choice","options":["Family","Childhood friend","School or university friend","Work","Neighbour","Other"]},{"id":"message_to_couple","label":"Your message to the couple","type":"long_text","required":true,"max_length":3000},{"id":"marriage_advice","label":"Your advice for a happy marriage","type":"long_text","max_length":1000},{"id":"favourite_memory","label":"A favourite memory with one of them","type":"long_text","max_length":1500},{"id":"date_night_idea","label":"A date night idea for them","type":"short_text","max_length":200},{"id":"first_year_wish","label":"A wish for their first year together","type":"short_text","max_length":200},{"id":"photo_link","label":"Link to a photo you took today","type":"url","help":"The form cannot take uploads, so share an album link instead."},{"id":"read_aloud_ok","label":"You may read my message aloud","type":"checkbox"}]}'

JSON definition

json
{
  "title": "Leave a note for the couple",
  "description": "Write whatever you would say if you had the microphone. We will read every word.",
  "fields": [
    {
      "id": "guest_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 120
    },
    {
      "id": "know_couple_how",
      "label": "How do you know the couple?",
      "type": "single_choice",
      "options": [
        "Family",
        "Childhood friend",
        "School or university friend",
        "Work",
        "Neighbour",
        "Other"
      ]
    },
    {
      "id": "message_to_couple",
      "label": "Your message to the couple",
      "type": "long_text",
      "required": true,
      "max_length": 3000
    },
    {
      "id": "marriage_advice",
      "label": "Your advice for a happy marriage",
      "type": "long_text",
      "max_length": 1000
    },
    {
      "id": "favourite_memory",
      "label": "A favourite memory with one of them",
      "type": "long_text",
      "max_length": 1500
    },
    {
      "id": "date_night_idea",
      "label": "A date night idea for them",
      "type": "short_text",
      "max_length": 200
    },
    {
      "id": "first_year_wish",
      "label": "A wish for their first year together",
      "type": "short_text",
      "max_length": 200
    },
    {
      "id": "photo_link",
      "label": "Link to a photo you took today",
      "type": "url",
      "help": "The form cannot take uploads, so share an album link instead."
    },
    {
      "id": "read_aloud_ok",
      "label": "You may read my message aloud",
      "type": "checkbox"
    }
  ]
}