Corbacount
Feature deep-dive

Goals & funnels.

Pageviews are nice. Conversions are the point. Mark which moments matter, then see where visitors are quietly walking away.

Two ways to define a goal.

Pick whichever fits how your site is built. Mix and match if you have to.

By URL

A visitor reaches /thanks or /order-confirmed and the goal is counted. Use this for newsletter signups, order completion, downloads served from a "thank you" page - anything that ends on a static URL. Zero code to add.

By JavaScript

Call window.corbacount_goal('signup') from anywhere in your code. Use this for in-app conversions, single-page-app flows, AJAX form submissions, or any event that doesn't have a dedicated landing URL.

Fire a goal from JavaScript.

One function, already loaded by the tracker snippet. Call it whenever the conversion happens in your own code.

<form id="signup-form" action="/register" method="post">
    <!-- your existing form -->
</form>

<script>
document.getElementById('signup-form').addEventListener('submit', function () {
    // counts one 'signup-completed' conversion for this visitor
    window.corbacount_goal('signup-completed');
});

// optional second argument: a reference id (an order number, for example).
// the same goal + reference is only counted once, so a refreshed
// thank-you page never double-counts a sale
window.corbacount_goal('order-paid', 'order-10482');
</script>

The call is fire-and-forget: it sends a tiny payload to /api/goal via navigator.sendBeacon, so it never blocks your page, survives the visitor navigating away mid-submit, and fails silently if anything goes wrong. The goal name is whatever string you choose - create the matching goal in your dashboard and the counts start appearing. Setup details live in the install docs.

What you can do with them.

Conversion rate by source

Compare which channels actually convert. The traffic source with the most visitors is rarely the one with the most signups.

Path before the goal

Click into any converted visitor and see every page they visited before the moment they signed up. Spot the content that closes deals.

Conversions over time

Daily, weekly and monthly conversion charts per goal. Annotate launches and campaigns so you can correlate them with bumps.

Multiple goals per site

Signup, paid upgrade, newsletter, downloaded white-paper - all tracked separately on the same site without instrumenting every action twice.

Funnels: where the journey breaks.

A funnel is just a goal with steps. Each step is a URL or a JavaScript event; visitors flow from one to the next and you see exactly where each one falls out.

Build any number of steps

Two steps for a simple "saw pricing → clicked signup" funnel. Six steps for a checkout flow. The dashboard renders a stacked bar chart that makes the drop-off cliff impossible to miss.

Drop-off percentages

Each step shows the count of visitors who reached it and the percentage that survived from the previous step. Quickly find the one bad step where 70% of people quit.

By source, device, country

Slice the funnel by where visitors came from, what device they were on, or what country they sit in. Mobile + slow network often shows a completely different funnel from desktop.

No funnel-tax

Most analytics tools charge extra for funnels or gate them to "Pro" plans. They are included on every Corbacount tier - see pricing for what each plan actually limits.

Common questions.

How do URL goals work?

You enter a path like /thanks when creating the goal. Every time a tracked pageview matches that path, the visitor is counted as converted - once per visit, not once per refresh. No code changes on your site; the regular tracking snippet already sends the URL.

How do funnels show drop-off?

Each funnel step shows two numbers: how many visitors reached it, and what percentage survived from the step before. The steps render as a stacked bar chart, so a step where 70% of people quit shows up as a visible cliff, not a row in a spreadsheet.

Can I track conversions by traffic source?

Yes. Every conversion keeps the visitor's original source - search engine, social network, referring site, or AI assistant. Corbacount classifies AI referrers separately, so you can see whether visitors arriving from ChatGPT or Perplexity actually sign up, or just browse and leave.

Do goals work in single-page apps?

Yes. The JavaScript trigger does not care about page loads - call window.corbacount_goal() from a React handler, a Vue method, or a plain fetch callback and the conversion is recorded. URL goals match real page loads, so for client-side route changes the JavaScript trigger is the right tool.

Want to see the reports these feed into? Take the dashboard tour.

Stop guessing at conversions.

Goals and funnels are included on every Corbacount plan. Drop your email and we will let you know when it is your turn.