Sample Audit Report

An illustration of the format and depth you receive

Illustrative example. Every figure on this page — spend, savings, percentages and timelines — is invented to show the report's structure. These are not results from a real customer, an average across customers, or output from any automated analysis. Your report contains findings derived solely from your own billing and usage data, and the numbers will differ.

Professional AnalysisCustom Code FixesImplementation Guidance

Executive Summary

Current Spend

£4,250/mo

Based on 150K tokens/month

Potential Savings

£1,820/mo

43% reduction possible

Implementation Time

2-3 days

Estimated rollout time

Key Findings

  • 40% of requests use GPT-4 when GPT-3.5 would suffice
  • Missing response caching for repeated queries
  • Suboptimal prompt engineering increasing token usage

Cost Breakdown

By Model

GPT-4

£2850

67%

GPT-3.5 Turbo

£950

22%

Embeddings

£320

8%

Fine-tuning

£130

3%

By Usage Pattern

Real-time queries

Optimization potential

£2100

49%

Batch processing

Optimization potential

£1200

28%

Development/testing

Optimization potential

£650

15%

Caching opportunities

Optimization potential

£300

8%

Recommended Fixes

1. Model Selection Optimization

// BEFORE: Always using GPT-4
const response = await openai.chat.completions.create({
  model: "gpt-4",
  messages: [{ role: "user", content: userInput }],
  max_tokens: 1000
});

// AFTER: Smart model selection based on complexity
const model = shouldUseGPT4(userInput) ? "gpt-4" : "gpt-3.5-turbo";
const response = await openai.chat.completions.create({
  model,
  messages: [{ role: "user", content: userInput }],
  max_tokens: 1000
});

function shouldUseGPT4(input) {
  // Logic to determine if GPT-4 is actually needed
  return input.length > 5000 || 
         containsComplexTask(input) ||
         requiresLatestKnowledge(input);
}

Expected Savings: £1,200/month (42% reduction in model costs)

2. Response Caching Implementation

// BEFORE: No caching
async function getAnswer(question) {
  const response = await openai.chat.completions.create({
    model: "gpt-3.5-turbo",
    messages: [{ role: "user", content: question }]
  });
  return response.choices[0].message.content;
}

// AFTER: Redis-based caching
const redis = new Redis(process.env.REDIS_URL);

async function getAnswer(question) {
  const cacheKey = `answer:${hash(question)}`;
  const cached = await redis.get(cacheKey);
  
  if (cached) {
    return JSON.parse(cached);
  }
  
  const response = await openai.chat.completions.create({
    model: "gpt-3.5-turbo",
    messages: [{ role: "user", content: question }]
  });
  
  const answer = response.choices[0].message.content;
  await redis.setex(cacheKey, 3600, JSON.stringify(answer)); // 1 hour TTL
  
  return answer;
}

Expected Savings: £450/month (60% reduction in repeated queries)

3. Prompt Engineering

// BEFORE: Inefficient prompt
const prompt = `Answer this question: ${question}. Be very detailed and thorough.`;

// AFTER: Optimized prompt with clear constraints
const prompt = `Answer concisely in 2-3 sentences:
Question: ${question}
Constraints: Max 150 tokens, focus on key points only.`;

Expected Savings: £170/month (30% reduction in token usage)

Implementation Timeline

Week 1

  • Implement model selection logic
  • Set up Redis caching infrastructure

Week 2

  • Deploy caching layer
  • Optimize prompt templates

Week 3

  • Monitor savings and adjust
  • Document new patterns

Want this for your own stack?

The figures above are illustrative. Your audit is prepared by hand from your own billing and usage data, and we'll tell you plainly if the savings aren't there. Solo £149 · Team £299.

No CSV needed upfront — we'll guide you through it.