# Choosing a channel

A published form reaches people two ways — a public link for anyone, or a request for one named person. How to pick.

## Choosing a channel

One form, two ways out: a public link anyone can open, or a request addressed to one person. You can use both, and the form itself never changes.

<h2 id="two-channels">The two channels</h2>

<p>
  A <strong>channel</strong> is one of the two ways a published form reaches people. You choose it in the <strong>Share</strong> sheet:
</p>

<ul>
  <li>
    <strong>Public link</strong> — anyone with the URL can answer, through a share link, an embed, or a QR code. You do not know in advance
    who will respond, and one link collects many submissions.
  </li>
  <li>
    <strong>Requests</strong> — one named person, one <a href="/requests/overview">request</a> each, created by a caller. You know who you
    are asking before you ask, and you can track whether they answered.
  </li>
</ul>

<p>
  Nothing about the form changes between the two. The same questions, logic, theme and settings serve both. A form can use both at once, and
  a form's channel is never a setting you declare — it is simply observed from the share links and requests that exist.
</p>

<h2 id="which-one">Which one to use</h2>

<h2 id="what-requests-add">What requests add</h2>

<p>A request is addressed, so it can carry things a public link cannot:</p>

<ul>
  <li>
    <strong>Answers you already know</strong> — the caller pre-fills visible questions server side, and can lock any of them so the
    recipient reads but cannot change them. See{' '}
    <a href="/building-forms/hidden-fields#requests-prefill-directly">Requests don't need a hidden field to pre-fill</a>.
  </li>
  <li>
    <strong>A status you can track</strong> — pending, completed, expired or canceled, per person, on the Requests page.
  </li>
  <li>
    <strong>Delivery and chasing</strong> — an optional invitation email and reminders, or your own delivery if you'd rather send the link
    yourself.
  </li>
  <li>
    <strong>A hand-back</strong> — a callback fires when the request reaches a terminal state, so the workflow that asked can resume.
  </li>
</ul>

<h2 id="what-public-links-add">What public links add</h2>

<ul>
  <li>
    <strong>Reach without a list</strong> — one URL serves everyone, so you do not need an address for each respondent.
  </li>
  <li>
    <strong>Several links per form</strong> — each with its own default language, expiry, response limit and tracking, so you can tell
    campaigns apart. See <a href="/submissions-analytics/share-link-analytics">share link analytics</a>.
  </li>
  <li>
    <strong>URL parameters</strong> — <code>?utm_source=…</code> style values seed the form's
    <a href="/building-forms/hidden-fields">hidden fields</a> and nothing else. This is the only way to pass data into a public link, and it
    is why hidden fields exist.
  </li>
  <li>
    <strong>Embeds and QR codes</strong> — see <a href="/sharing-publishing/embedding-popups">embedding &amp; popups</a>.
  </li>
</ul>

> ⚠️ **A request link ignores URL parameters**
> <p>
>     Request links do not read <code>?param=</code> values at all. The recipient holds that link, so honouring parameters would let them
>     rewrite what the caller set. On a request, the caller's context is the only source.
>   </p>

<h2 id="allowance">Both channels spend the same allowance</h2>

<p>
  Your workspace has one monthly allowance shared across both channels. A submission collected through a share link spends one unit, and{' '}
  <strong>creating a request spends one unit</strong> — whether or not the recipient ever answers. The submission a request collects is
  already paid for by the request and is not counted again. See{' '}
  <a href="/subscription-billing/limits-quotas#monthly-allowance">limits &amp; quotas</a>.
</p>

<h2 id="telling-them-apart">Telling them apart afterwards</h2>

<p>
  The submissions table has a <strong>Source</strong> column showing <strong>Public link</strong> or <strong>Request</strong> for each row,
  and you can filter by it. Analytics covers both channels together with a channel filter rather than separate pages, and adds a request
  funnel when requests exist. See <a href="/submissions-analytics/analytics-insights">analytics &amp; insights</a>.
</p>

> ℹ️ **Step by step in Zapier and n8n**
> <p>
>     <a href="/guides/zapier/public-link-submissions">Send public link submissions to another app</a> sends each submission to email, Sheets,
>     Slack or a CRM through Zapier. <a href="/guides/zapier/send-a-request">Send a request from a Zap</a> does the same for requests. The
>     <a href="/guides/overview#n8n">n8n guides</a> do both in a self-hosted n8n.
>   </p>

<h2 id="next-steps">Next steps</h2>
<div class="not-prose grid gap-3 sm:grid-cols-2">
  - [Sharing & embedding](/sharing-publishing/sharing-embedding) — Set up the public link channel
  - [Requests overview](/requests/overview) — Ask one named person
  - [Hidden fields](/building-forms/hidden-fields) — Carry data the respondent never sees
  - [Limits & quotas](/subscription-billing/limits-quotas) — What each channel spends
</div>
