Profila Sign up

Billing Guide

What you pay for, and what you never pay for.

Profila Billing Not yet in effect

Status

Billing is built. Nothing is being charged yet.

The billing system went live on 11 August 2026. No pricing has been configured on it, so no brand is being charged today and no invoice has been issued.

This guide describes how billing works once it is switched on for your account. Nothing in it is retrospective: your rate card, your budgets and your first invoice all begin when your account is set up, and your Profila contact will tell you when that is.

Profila Billing

The short version

You pay when a person you are connected to engages with your content

Not for showing it to them, and never more than the budget you set.

Profila is not an advertising marketplace. People connect to your brand on purpose, and tell us what they are looking for. Your content reaches them because they asked — which is why the pricing works differently from anywhere else you have bought media.

Three things follow from that, and they shape everything below.

  • You are billed for engagement, not for exposure. An impression — your content appearing on someone’s screen — costs nothing today. A click-through costs what your rate card says.
  • The person sets the ceiling on volume, not you. When someone creates a signal, they say how many pieces of content they want and for how long. Your budget controls what you spend. It does not entitle you to reach anyone more often than they asked to be reached.
  • Your budget is a hard stop. When it is spent, your content stops being delivered. It is not throttled, not queued, and you are never invoiced past it.
Profila Billing

What you are charged for

There are exactly two billable events

Both apply the same way whether your content was authored in the Profila portal or sent through the brand API.

EventWhat it meansCharged?
ImpressionYour content appeared on someone’s screenNo — priced at zero
EngagementSomeone clicked through to youYes, at your rate card price

Impressions are counted, reported and shown on your invoice with the quantity and an amount of 0.00. We meter them properly rather than ignoring them, so that the number is auditable and so that nothing has to be rebuilt if that ever changes. If it ever does change, it will appear on your rate card before it appears on an invoice.

  • Counted once per person, per day. Someone who scrolls past your moment five times in a morning generates one billable event, not five. The same is true if they click twice. The rule is one billable event per person, per piece of content, per event type, per day. This is deliberate and it works in your favour — a person re-opening the app, a refreshed feed, or a flaky connection retrying cannot inflate what you pay.
  • Everything else is free. Saves, shares, dwell time, reactions, “I want that” leads, video plays — all recorded, all visible in your analytics, none of them billed.
Profila Billing

Content types and price bands

What you pay depends on what the content is

Selling something costs more than telling someone about your company. When you create a moment you choose a communication type, and that choice determines the price band.

You choosePrice bandRoughly speaking
AdvocacyBrandLowest
Brand buildingBrand
CausesBrand
Company informationInformation
Product informationInformation
PromotionPromotion
Personalised offerOffer
Special offerOffer
Lead generationActionHighest
SurveyAction

The exact multiplier for each band is on your rate card. The ordering above is the intent: brand-building content is cheapest because it asks least of the person; an offer or a lead-generation ask is worth more to you and is priced accordingly.

  • You cannot pick the price band directly. It follows from the communication type, and the communication type also changes how your moment looks and behaves to the person receiving it. That link is intentional — it means the label you choose is the label the person sees.
  • The type is locked once the moment is published. You can edit copy and imagery; you cannot retype a published offer as brand-building. If you need a different type, create a new moment.

A price band is not a format. The Business Guide describes six formats — Banner, Native, Carousel, Video, PDF and Info. Those are how a Brand Moment looks. The five bands above are what the content is. They are different axes, and only the band sets the price: an Info-format card can carry any band, and an Information-band moment can use any format. “Info” and “Information” are not the same thing.

Profila Billing

Your rate card

Your rate card is your price list

Ten cells: the five content bands against the two event types. It is generated from your billing country, your company size, and industry benchmarks — and then a Profila commercial manager reviews it, can override any individual cell, and approves it.

  • It is fixed once approved. Prices never change by editing a card. They change by us issuing a new version, which takes effect from the first day of a month. Your existing moments keep the prices they were published under.
  • A moment is priced at publish, for its whole life. If we approve a new rate card while your moment is running, that moment carries on at the price you agreed. You are never repriced retroactively.
  • A rate card starts on the first of a month, never mid-month. One invoice cites one rate card. If a card could start on the 14th, your invoice lines would reference two different price lists while the header claimed one — and “which price applied that day” becomes an argument nobody can settle.
  • Discounts must have an end date. Any discount on your card carries an expiry. We will tell you before it lapses.

You can see your current card any time under Billing → Rate card, including what it was derived from.

Profila Billing

Budgets

Every moment has a budget, and it is a hard cap

When your accrued spend reaches it, three things happen at once:

  1. The moment stops being delivered to anyone new.
  2. Nothing further is charged.
  3. Any engagement that arrives after the stop is still recorded, still shown to you, and never billed.

We enforce this at the moment of each event rather than in an overnight job, so there is no window where a fast-moving moment quietly overshoots. You will not receive an invoice larger than the budgets you set.

  • You will see it coming. We record when a moment passes 50%, 80% and 98% of its budget, so “it stopped without warning” should never happen.
  • Raising a budget restarts delivery immediately. Lowering it below what has already been spent is refused — that money is already owed, and pretending otherwise would put your invoice and your dashboard into disagreement.
  • A zero budget means no cap was set, not “spend nothing”. A moment with no budget runs until you stop it. Set one.
Profila Billing

On-platform

Moments: the on-platform way

A moment is content you write in the Profila portal and send to people connected to your brand. When you create one, you choose how its audience behaves.

  • Static — the moment goes to the people on your list as it stands when you publish. People who connect later do not receive it. Use this when the content is tied to a moment in time.
  • Dynamic — the audience keeps growing. Anyone who connects to your brand afterwards receives it too. Use this for welcome content and evergreen information.

This matters for budgeting. A static moment’s cost is bounded by a list you can count. A dynamic one is bounded only by your budget, which is exactly why the budget is a hard cap.

You can publish a dynamic moment to zero people. A brand launching on Profila with no connections yet can prepare a welcome moment that reaches everyone who arrives later. This is supported on purpose and is not an error.

Profila Billing

On-platform · before you publish

What we quote you before you publish

At publish we show an estimated spend range — low, middle, high — based on your audience size, your rate card, and expected engagement rates.

Two honest caveats. Early on we have no history for your brand, so the estimate is built from platform assumptions rather than from your own results, and we say so on screen rather than presenting an assumption as a measurement. And if we cannot produce a meaningful estimate we show nothing at all rather than showing zero — “we did not quote you a number” and “we quoted you nothing” are different claims.

The estimate is not a cap. Your budget is the cap.

Profila Billing

The brand API

The brand API: the other way in

If you have a system of your own, you can pull the signals that match your inventory and push content to them programmatically, rather than writing moments in the portal.

It is the same product at the same prices. Same content types, same rate card, same two billable events, same one-per-person-per-day rule. A different door, not a cheaper one.

Four things work differently, and all four matter.

Profila Billing

The brand API · what differs

You declare the content type yourself

Every push must say what the content is, using the same ten types as the portal. It is required and there is no default — that choice selects your rate, and defaulting it would mean Profila picking your price for you.

Declare it accurately. In the portal, the type also changes how your moment looks, so mislabelling costs you something. Over the API you control the creative entirely, so we review what is pushed and may reclassify it.

A reclassification reprices that period’s events, not just future ones. If you disagree, raise it before the month closes — after that the period is invoiced and fixed. Your billing page shows how many items have been reclassified, and your declared type is always kept alongside our ruling, so there is a record of both sides.

Under-declaring does not save money. It surfaces on the invoice you were trying to reduce.

Profila Billing

The brand API · what differs

The person’s limit binds you

Every signal says how many pieces of content its owner wants in the current period.

The signalWhat you may send
Named your brand specificallyTheir whole remaining allowance
Open to any brandOne item per period, and never more than their remaining total

The one-per-period rule on open signals exists so a shared signal is not a race between brands. It is not us rationing you: whatever brands do not take, Profila’s own results fill, so the person always receives what they asked for.

You can see the numbers before you send — every signal reports the person’s ceiling, what remains, and what remains for you. A push beyond the limit is refused with a clear reason. Backing off is correct behaviour, not an error to retry through.

A signal that has expired or been paused is refused too. That is someone who has stopped asking.

Profila Billing

The brand API · what differs

Your budget is set by Profila, and it is one pot

The API channel has a single standing budget covering everything you push, set by Profila rather than by you — because Profila billing is post-paid on credit, so your budget is effectively your credit line.

A budget of zero means the channel is closed, not free. Pushes are refused rather than delivered as something that could never be invoiced.

Everything else works as it does for moments: hard cap, delivery stops, raising it resumes.

Profila Billing

The brand API · what differs

You need a billing country first

Set it under Company information. Without it, pushes are refused — we cannot price content for a brand whose pricing country we do not know.

This is the single most common reason a new API integration delivers nothing.

Profila Billing

Never billed

What we deliberately do not charge you for

Your invoice shows what we did not bill, with the reason. We think this is worth more than a discount.

ReasonWhat it means
Test trafficYour account or a specific brand is flagged as test. Recorded, never billed.
Budget reachedThe engagement happened after your cap. Recorded, never billed.
Consent withdrawnThe person’s consent did not cover this. Never billed.
Account suspendedServing was suspended at the time. Never billed.
Invalid activityWe removed it during quality checks. Never billed.

You can see this any time under Billing → Usage, not only at month end.

Also never billed: impressions (priced at zero), repeat views by the same person on the same day, and every non-engagement interaction — saves, shares, dwell, reactions, video plays, leads.

Profila Billing

Currencies and payment

Currencies and how you pay

  • Prices are quoted in your country’s currency. A German brand is priced in euros, a South African brand in rand. Your billing country determines this, and it is set in Company information.
  • The amount due is always in Swiss francs. Profila is a Swiss company. Your invoice shows both: the total in your pricing currency, and the CHF sum that is legally due, with the exchange rate used. That rate is fixed when the invoice is issued and never re-read afterwards, so the amount cannot move between you receiving the invoice and paying it.
  • You can pay in CHF, EUR, USD or GBP. Choose your settlement currency in your billing settings.
  • There are no cards and no card fees. Billing is post-paid: you use the platform, we invoice monthly, payment terms are 30 days by default. We would rather carry a small amount of credit risk than put a payment wall between you and your customers.
  • Tax depends on where you are. Swiss brands are charged Swiss VAT; EU businesses with a valid VAT number are typically reverse-charged; brands outside those are zero-rated for export. Your invoice states which applies and cites the rule.
Profila Billing

Invoices

Your invoice, line by line

Invoices are issued monthly, after the month closes.

  • Lines are grouped by content type and event type — not one line per moment. So you will see “Offer — engagements”, with a quantity, a unit price and a total. Impressions appear on their own lines with their quantity and 0.00.
  • Everything on it is reproducible. Every line traces to counted events, at the price your rate card carried at the time. Nothing is estimated, apportioned or rounded into existence: rounding happens once, at the invoice, not on every event.
  • An issued invoice never changes. If something is wrong we issue a credit note against it rather than editing it. Its status can move — issued, part paid, paid, overdue — but its numbers cannot.
  • Every invoice carries a payment reference. Quote it on your transfer; it is how we match your payment.

You can download any invoice as PDF or CSV from Billing → Invoices.

Profila Billing

Setting up

Setting up: a checklist

Work through this in order. Each step unblocks the next.

  1. Get your brand verified. Profila verifies you. Nothing else is available until then.
  2. Set your billing country. Company information → billing country. This decides your pricing currency and your tax treatment. Your first moment is blocked until this is set — on purpose, so that nothing is ever delivered that we cannot price.
  3. Add your billing details. VAT number, billing email, settlement currency.
  4. Wait for your rate card. Profila generates and approves it. You will see it under Billing → Rate card. Until it exists, content can be delivered and metered but not priced.
  5. Create your first moment. Choose the communication type carefully — it sets the price and it is locked at publish. Set a budget. Check the estimate.
  6. Watch Billing → Usage. Daily, not monthly. Everything that reaches your invoice is visible there first.
Profila Billing

Setting up

If you are also using the API

  1. Ask Profila to set your API budget. The channel is closed until it is set.
  2. Create API credentials. You do this yourself, under your brand’s API settings, once verified.
  3. Check remainingForYou before pushing, and declare your content type accurately on every push.

The endpoints, fields and error codes are in the API Docs.

Profila Billing

After you publish

What you can change on a live moment

ThingCan you change it?Why
Headline, body, images, linkYes, any timeNone of it affects price
Budget — increaseYes. Delivery resumes immediately if it had stopped
Budget — decreaseOnly down to what has already been spentThat money is owed; unspending it would put your invoice and your dashboard into disagreement
Audience mode (static ⇄ dynamic)Yes
Communication typeNo — fixed at publishIt is the price. Otherwise a moment could run at the offer rate and then be retyped as brand-building to reprice the whole flight downward
Pause or stopYes, any timeStopping ends delivery; you keep what was already billed

To use a different communication type, create a new moment. The old one keeps its own history and its own price.

  • When someone disconnects. They stop receiving the moment. Anything already billed stays billed — it was delivered and engaged with. Nothing further is charged for that person.
  • When someone deletes their account. The billing record survives; the link to that person does not. We are legally required to keep invoice evidence for the retention period, so the row stays with everything identifying stripped out. You keep a defensible invoice, they keep their right to be forgotten, and neither is traded away for the other. You will see no change: quantities and totals are unaffected.
  • If your billing country changes. Tell us before it matters. Your pricing currency and tax treatment follow your billing country, so a change means a new rate card, effective from the first of a month like any other. Moments already running keep the prices they were published under.
Profila Billing

When things go wrong

Your account can be suspended

Serving stops when either of these happens.

StatusWhat it meansHow it clears
Suspended — creditYour unbilled usage passed your credit limitAutomatically, once the balance comes down. It is not a punishment, it is a ceiling
Suspended — overdueAn invoice is past its termsWhen it is paid. This one does not clear itself

While suspended, engagements are still recorded and never billed. They appear in your not-billed report with the reason.

Profila Billing

When things go wrong

Invoice states

StatusMeaning
IssuedSent, within terms
Part paidWe have received some of it
PaidSettled
OverduePast terms
ReversedCancelled by a credit note
Written offWe have stopped pursuing it
Profila Billing

When things go wrong

If an invoice is wrong

Tell us. We do not edit issued invoices — that would make them unreproducible — so a correction is a credit note against the original, and a fresh invoice if one is needed. Both documents survive, so the trail is intact.

  • Raise it as early as you can. Anything that reprices a period (including an API reclassification you disagree with) can only be done while the month is open. Once it is invoiced, the period is fixed and the remedy is a credit note instead.
  • If you never pay. Serving suspends. We do not sell your data, and we do not keep delivering and adding to a balance you have not settled. Talk to us before it gets there — a credit limit can be adjusted.
Profila Billing

Worked example

A retailer’s special offer

You have 4,000 connections. You publish a special offer — the Offer band, your most expensive apart from Action — with a budget of CHF 500 to a static audience.

Over a week, 3,100 people see it. Those impressions cost nothing. 240 of them click through. You are billed for 240 engagements at your Offer rate. Fourteen of those people clicked twice; you were billed once each.

If those 240 engagements had reached CHF 500, delivery would have stopped there and the remaining clicks would appear on your invoice as not billed — budget reached.

Profila Billing

Worked example

A law firm with ten clients

You have ten connections and no interest in reach. You publish product information — the Information band — with a budget of CHF 50 to a dynamic audience, so new clients receive it when they arrive.

Nine people see it, three click. You are billed for three engagements. Your invoice is a few francs. There is no minimum spend and no monthly commitment; a ten-person audience is a perfectly normal way to use Profila.

Profila Billing

Worked example

A brand launching with no connections

You have just joined and have nobody connected. You publish a company information welcome moment with a dynamic audience and a budget of CHF 200.

It reaches nobody on day one. Over the following months, every person who connects to your brand receives it, and you are billed only as they engage. The budget stops it whenever it fills.

Profila Billing

Worked example

An API brand, open signal

A person creates an open signal — “any brand”, up to 10 items a day, for 3 months.

You match on category. You may push one item per period. You push a promotion; it is accepted. Your second push that period is refused with BRAND_LIMIT_REACHED. Four other brands each push one. Profila’s own results fill the remaining five slots, so the person receives the ten they asked for.

You are billed for engagements on your one item, at your Promotion rate, from your API budget.

Profila Billing

Worked example

An API brand, reclassified

You push twelve items declared as company information — the cheap Information band. They are in fact discount offers.

Profila reviews them and reclassifies them as special offer. The engagements already recorded this period are repriced at your Offer rate. Your billing page shows “12 items reclassified”, and your invoice reflects the Offer rate.

Had the month already closed, the reclassification would have been refused and the period would have stood as invoiced. This is why we review before close.

Profila Billing

Worked examples

Edge cases, answered

Two moments to the same person on the same day

You publish a product-information moment and a special-offer moment. Anna receives both and clicks both. You are billed twice — once at the Information rate, once at the Offer rate. The once-per-day rule is per piece of content, not per person. Two moments are two pieces of content. If Anna clicks the same moment three times, that is still one charge.

A person who reduces what they want, mid-flight

Ben asked for 10 items a day. Halfway through the month he changes it to 3. The new number applies from his next period. You are not refunded for what was already delivered — he asked for it at the time — and you cannot deliver above 3 a day afterwards. Your budget is unaffected; it just takes longer to spend.

A signal that expires while you are using it

Signals run for a set number of days. When one expires it stops accepting content, and API pushes into it are refused. If the person renews it, the clock and the daily count both reset, and it becomes available again — including your per-brand slot on an open signal.

Your rate card is superseded mid-flight

We approve a new card effective 1 September. A moment you published in August keeps the August prices for its whole life. Moments you publish from 1 September use the new card. You will never see one invoice citing two price lists, because a card can only take effect on the first of a month.

A discount expires

Discounts carry an end date — we do not run open-ended ones. When it lapses, your prices return to the card rate from the first of the following month, and we will have told you before it happened.

Test traffic

A brand flagged as test is metered exactly like a live one and never billed. Everything shows in your reports marked as test traffic, so you can prove an integration works without generating an invoice.

You cannot set this flag yourself, and neither can your integration. It comes from your brand record. A flag a caller could set would be abusable in both directions — mark real traffic as test to suppress billing, or mark staging traffic as live to manufacture free impressions.

Profila Billing

Reference

Every scenario, in one table

Everything that determines whether you are charged, in one place. On-platform means a moment you wrote in the portal; API means content pushed through the brand API.

SituationOn-platformAPICharged?
Charging
Content shown to someoneYesYesNo — impressions are priced at zero
Someone clicks throughYesYesYes, at your category rate
Same person, same content, second view that dayYesYesNo — counted once
Same person, same content, second click that dayYesYesNo — counted once
Same person, two different pieces of contentYesYesYes — charged separately
Someone saves, shares, reacts, or dwellsYesYesNo — never billed
Someone submits “I want that”YesYesNo — the lead is free
Someone plays or completes a videoYesYesNo
Budget reached, further engagement arrivesYesYesNo — recorded, shown, never billed
Your brand is flagged as testYesYesNo
Your account is suspendedYesYesNo
Invalid activity found in quality checksYesYesNo — removed
You have no approved rate card yetYesYesNo — metered but unpriced
Consent withdrawn for that personYesYesNo
Setup and limits
No billing country setMoment creation blockedPush refusedn/a
No API budget setn/aPush refused — channel closedn/a
Brand not verifiedPortal worksAPI unavailablen/a
Person’s daily limit already fullAudience-based, not applicablePush refusedn/a
Open signal, your one slot usedn/aPush refusedn/a
Signal expired or pausedn/aPush refusedn/a
Content type not declaredChosen in the formPush refused — 422n/a
Pricing
Rate card superseded while runningKeeps its published priceKeeps its published priceUnchanged
Profila reclassifies your contentNot applicableOpen period repricedAdjusted
Reclassification after month closen/aRefusedUnchanged
Discount expiresNew rate from the 1stNew rate from the 1stAdjusted forward
People
Someone disconnects from your brandStops receivingStops matchingPast charges stand
Someone deletes their accountRecord kept, identity strippedSameUnchanged
Someone lowers their content limitAudience unaffectedFewer slots for youUnchanged
Someone renews an expired signaln/aSlots reset, you can push againn/a
Profila Billing

FAQ

Questions we get asked

Is there a minimum spend?

No. No minimum, no monthly commitment, no platform fee. You pay for engagements and nothing else.

Why am I not charged for impressions?

Because in this model the person asked for your content. You brought them here; we did not sell you their attention. If that ever changes — if we start genuinely bringing you customers — it will be on your rate card before it is on an invoice.

Can I be charged more than my budget?

No. It is enforced at each event, not by an overnight job.

Why did my moment stop?

Either it reached its budget, or its audience is exhausted. Billing → Usage tells you which.

Why is my content not being delivered through the API?

In order of likelihood: no billing country set; no API budget set; the person’s daily limit is full; the signal expired or was paused; your brand is not verified.

Can I change a moment’s type after publishing?

No. Copy and imagery yes, type no — it is the price. Create a new moment instead.

Someone deleted their account. What happens to what I was charged?

The billing record survives, because we are legally required to keep invoice evidence. It is stripped of everything identifying that person first. You keep a defensible invoice; they keep their right to be forgotten. Neither is traded away.

Who do I talk to about a price?

Your Profila contact. Rate cards are reviewed and approved by a person, not generated and sent — overrides are normal and are recorded with the reason.

Profila for Business

Talk to us about a price

Rate cards are approved by a person, not generated

Your card is derived from your billing country, company size and industry benchmarks, then reviewed and approved by a Profila commercial manager who can override any cell. Overrides are normal and are recorded with the reason.

What you can build is in the Business Guide; how to push it programmatically is in the API Docs.

Email [email protected]