Report outcomes after they happen
Use Project settings → Live collection to connect an application-server source or supported traffic adapter. Choose the verified environment and declare static event/page codes.
An application outcome such as purchase-confirmed should be recorded after the application commits the result. A click or HTTP 200 response alone is not proof of a completed purchase.
Application server
Store the source credential on the server. Download the SDK from Astor, then use the source’s endpoint and token.
import {createAstorLive} from './astor-live-server.mjs';
const live = createAstorLive({
endpoint: process.env.ASTOR_LIVE_SERVER_ENDPOINT,
token: process.env.ASTOR_LIVE_SERVER_TOKEN,
});
await savePurchase();
live.record('purchase-confirmed', {status: 'success', durationMs: 420});
// Flush with your runtime's background-work hook or at shutdown.
await live.flush();The SDK queues and retries bounded batches. Its queue is in memory; a process termination can lose unsent events. Use a durable application outbox when restart-surviving delivery is required.
Traffic adapter
Declare the provider project, environment and route mappings. Configure the matching export at the provider separately; creating the source in Astor does not create or pay for a Vercel drain.
Sources start paused. Connect the provider or application, review the collection policy, then enable the source. Rotation pauses the source and invalidates the old credential.
Collection enabled is the saved setting, not a claim that signals are arriving. Check Last delivery, Last signal, and any visible gap or capacity warning. The times come from received activity, not from refreshing the view. Delivery, exclusions & connection keeps longer setup details optional. If the server rejects your session or project role, the previously displayed activity and controls disappear while access is rechecked.
Read the correct signal
Traffic records are request aggregates, not unique people or complete browser sessions. Browser journeys remain separate unless an application outcome supplies a valid temporary context.
Exclude personal IDs, raw URLs, query values, request bodies and arbitrary logs. Store only the declared codes and allowed status/latency categories. Use the actual source’s coverage, delivery state and gaps when interpreting a Live finding.
Review activity without starting paid work
Review activity prepares the recorded counts for review. Written feedback and manual clarification are free, including when the project pool is empty. You can send the activity into a feedback conversation and confirm what to save. Follow-up clarifications within an accepted analysis are included. Larger reviews show their total before starting. Recorded activity or saved feedback is not an approved implementation or a verified improvement.
