Product News: Revenue Dashboard, Channel Attribution, and Stripe
Connect Stripe from the Stripe App Marketplace or record payments from your code, then see revenue by account and by the channels that first and last brought each paying customer, with attribution fixed at the moment of payment.
Published: Fri Sep 25 2026

Revenue now lives in the same event store as the rest of your analytics, so you can see which channels and accounts produce paying customers.
Connect Stripe
Logspot is on the Stripe App Marketplace. Go to Project Settings → Revenue, choose Connect Stripe, and approve the connection on Stripe's consent screen. Logspot reads your payments and subscriptions from then on, with no webhook for you to build.
The connection is read-only. Logspot requests seven read permissions and no write permissions, so it can't create, modify, refund, or cancel anything in your Stripe account. Disconnect at any time from the same page.
To tie a payment to the visit that earned it, add the visitor's Logspot ID to your Stripe Checkout session metadata:
const session = await stripe.checkout.sessions.create({
// ...your existing checkout config...
metadata: {
logspot_anonymous_id: anonymousId, // from Logspot.getAnonymousId()
},
});Without that metadata, Logspot links the payment to a company by matching the Stripe customer's email domain.
Or Record Payments From Your Code
Send a payment from your server with the Node SDK:
Logspot.revenue(29.99, {
currency: 'USD',
userId: 'john@doe.com',
transactionId: 'ch_3Ov...', // your payment processor's charge id
});Amounts are in major units, so dollars rather than cents. Passing transactionId makes the call safe to retry: sending the same ID again records the payment once. The web SDK has a revenue() call as well, and browser-side revenue follows the visitor's consent. Revenue sent from your server is exempt from the analytics consent gate by default, which you can change under Project Settings → Consent.
The Revenue Dashboard
Analytics → Revenue shows recent payments and revenue by account. Each payment rolls up to its company, with the individual user as a drill-down. Every payment is attributed to the channel that first brought the customer and the channel that last brought them before they paid.
Attribution Fixed at Payment
Attribution is recorded when the payment happens and is never recalculated, so a later visit can't shift credit for an earlier sale. A refund keeps the attribution of the original sale.
Currency
Set each project's currency under Project Settings → Revenue. Reports show amounts in that currency and do not convert between currencies.
Get Started
Revenue analytics is available now on every plan. Connect Stripe under Project Settings → Revenue, or add a revenue() call where a payment completes, and set your currency on the same page. See Revenue Tracking & Attribution.