PGML: Billing

The Billing feature provides users with comprehensive control over their organization’s financial management. Users can easily add and manage payment methods, settle past due notices, and gain clear visibility into their expenses. This level of transparency empowers users to monitor usage, optimize spending, and maintain financial accountability across their organization.

Outcome:

  • Reduced Support Tickets: Fewer inquiries about billing, breakdowns, and
unexpected charges

  • Improved User Trust: Made users more comfortable adopting pay-as-you-go

  • Stronger User Research Insights: cost-conscious users exploring ML/AI—shaped future design decisions

Contribution:

  • Concept

  • Research & Testing

  • User Experience & Design + Patterns

THE PROBLEM

Billing experience was fragmented—users had to navigate different locations to
make payments and view previous invoices.

Users needed clear and predictable billing, yet the complexity of multi-organization setups, delayed payments, and handling failed transactions made this difficult. Addressing these issues required a strategic approach to maintain clarity and improve user trust.

CHALLENGES AND CONSIDERATIONS

  • Multi-Org Billing Complexity

    • Each organization may need a different credit card

    • All databases under an organization needed to be paid together every 28 days

    • Mid-cycle database additions caused billing unpredictability

  • Migrating Legacy Users

    • Some users were previously allowed delayed payments via email invoices.

    • New system required auto-pay, but many users had never added a credit card

  • Handling Payment Failures

    • If a payment failed due to an expired card, updating the card didn’t auto-pay
past due amounts

    • Stripe API required users to manually authorize payments for past-due amounts

THE DISCOVERY

Revamping the billing system required close collaboration across multiple teams, including, engineers, data scientists, product managers, and front-end developers.

Our approach was deeply informed by user research, gathered through interviews with existing and potential customers, which helped us understand common pain points and hesitation around billing transparency.

We analyzed support tickets and user feedback, identifying confusion around payment structures, unpredictable costs, and frustration with past-due notices. These insights helped us shape a billing experience that proactively addressed user concerns and reduced reliance on support channels.

USER INSIGHTS

  • Interviews with existing customers helped us identify frustrations with unclear invoices and unpredictable billing

  • Engagement with potential customers highlighted hesitations around providing credit card information due to fear of unexpected charges

  • Analysis of support tickets revealed frequent inquiries about billing breakdowns, leading to a need for clearer explanations and visibility

  • Reducing support reliance by providing transparent cost breakdowns, leading to fewer billing-related inquiries post-launch.

Before: Single payment solution

After: Multi-payment solution

THE SOLUTION

Our approach included streamlining payment management, enhancing cost predictability for Serverless users, and providing clear past due notifications.

To tackle these challenges, we focused on restructuring the billing experience, improving transparency, and ensuring users had real-time visibility into their charges. By introducing a three-tier billing experience, we created a more intuitive system that catered to various user needs.

A THREE-TIER BILLING SYSTEM

  • Org-Level View

    • Current and projected costs

    • Past due notices & invoices

    • Payment method management via Stripe API

  • Database-Level Breakdown

    • Serverless: Cost breakdown by time, storage, and query usage

    • Dedicated: Cost breakdown by storage, replicas, availability, pooler, and comput

  • Query-Level View: Users could drill down into query-level costs

    • Total cost per query

    • Time, total calls, and total rows

    • Sorting by query, price, calls, and rows

KEY CHANGES IMPLEMENTED

  • Consolidating Payment & Invoice Management

    • Research showed terminology confusion between "Payment Method" and "Invoice"

    • Continued reliance on Stripe API minimized engineering overhead

  • Increasing Billing Transparency for Serverless Users

    • Many users were hesitant to provide a credit card, fearing unpredictable charges

    • We introduced a real-time cost estimator:

      • Estimated monthly cost based on current usage

      • Breakdown of query, storage, and time costs (updated per minute)

      • Credits tracking (e.g., signup and survey rewards)

  • Improving Past Due Payment Visibility

    • Added clear past due notices with a CTA to update payment methods and pay overdue balances

    • Users could view detailed bills per database and organization

View Invoices

Passed Due

View Queries

THE IMPACT

This project, while not a direct product feature, played a critical role in enhancing user experience and aligning billing with user expectations.

By making billing more transparent, predictable, and easy to manage, we built trust and improved overall user satisfaction.

IMPACT

  • Increased User Transparency: Users could finally understand their costs at a
granular level

  • Reduced Support Tickets: Fewer inquiries about billing, breakdowns, and
unexpected charges

  • Improved User Trust: A transparent billing experience made users more comfortable adopting pay-as-you-go

  • Stronger User Research Insights: Understanding our audience—cost-conscious users exploring ML/AI—shaped future design decisions