# CloudVerse AI Documentation Corpus
Generated: 2026-08-05T09:24:41Z
This file concatenates the curated Markdown source used to build the public documentation site.
## Administration
Source: `administration/index.md`
URL: /administration/
# Administration
This section covers everything needed to manage CloudVerse AI for your organization — user accounts, role-based access control, business scope configuration, notifications, and organization settings.
## What's in this section
| Area | Use it to |
|---|---|
| [Users & Roles](../rbac/index.md) | Invite users, assign roles, and manage access permissions |
| [Key concepts](../rbac/key-concepts.md) | Understand users, roles, permissions, and access scopes |
| [Roles and permissions](../rbac/roles-and-permissions.md) | Review built-in roles and their permission sets |
| [Create a role](../rbac/creating-a-role.md) | Build a custom role with specific permissions |
| [Assign users](../rbac/assigning-users-or-members.md) | Add users and assign roles |
| [Access scopes](../rbac/access-scopes.md) | Limit what users see using Perspective-based scopes |
| [Teams & Workspaces](../rbac/teams-workspaces-business-scopes.md) | Group users and organize resources into access boundaries |
| [Perspectives](../organization/perspectives.md) | Map cloud resources to business teams, products, and environments |
| [Organization Settings](../organization/organization-settings.md) | Configure currency, branding, and org-level preferences |
| [Notifications](../settings/notifications.md) | Set up alert delivery for anomalies, budgets, and recommendations |
| [Profile & Preferences](../settings/profile-preferences.md) | Manage your personal settings and display preferences |
## Who administers CloudVerse AI
The `Tenant Admin` role has full access to all administration pages. Other roles may have limited access depending on their permission set. If you are missing a tab or action, ask a `Tenant Admin` to review your role.
## Common admin workflows
**Invite a new user** → [Assign users](../rbac/assigning-users-or-members.md) → choose role → optionally set a Dynamic Perspective scope.
**Create a scoped user for a team lead** → [Create a role](../rbac/creating-a-role.md) with view-only permissions → [Assign users](../rbac/assigning-users-or-members.md) → set [Access scope](../rbac/access-scopes.md) to their team's Perspective.
**Map costs to business teams** → [Perspectives](../organization/perspectives.md) → create a Perspective per team → attach cost allocation rules.
**Set up SSO** → [Organization Settings](../organization/organization-settings.md) → SSO tab → configure your identity provider.
**Route anomaly alerts to Slack** → [Notifications](../settings/notifications.md) → select Slack as the channel → choose which alert types to route.
## Access model overview
CloudVerse AI uses roles, permissions, teams, workspaces, and access scopes to control what users can see and change.
Users with a Dynamic Perspective scope see only cost data matching that scope. Use the smallest role and scope that lets each user do their job.
---
## Applications
Source: `architecture/applications.md`
URL: /architecture/applications/
# Applications
**Architecture Intelligence** organizes detected applications, their resources, costs, dependencies, and modernization recommendations.
## Open Applications
Go to **Architecture > Applications**.
The top navigation contains **Applications** and **Recommendations**. Summary metrics can include **Applications Detected**, **Direct Cost**, **Indirect Cost**, and **Savings Opportunity**.
## Review an application
1. Filter or select an application from the inventory.
2. Open its detail page.
3. Use the **Architecture**, **Resources**, and **Recommendations** tabs.
4. Review application services, workers or async components, persistence, shared platform dependencies, and relationship labels.
5. Compare direct and indirect costs.
6. Open an eligible recommendation bundle to review its evidence, impact, risk, confidence, and next-step guidance.
The recommendation summary can show **Open Bundles**, **Estimated Savings**, and **High-Risk Bundles**.
## Review checklist
| Check | What to validate |
|---|---|
| Ownership | The application owner and platform owner agree on the mapped resources. |
| Direct cost | Resources dedicated to the application are included. |
| Indirect cost | Shared platform services are represented without double-counting. |
| Dependencies | Data stores, queues, workers, and shared services are linked to the right application. |
| Recommendations | Evidence, impact, risk, and confidence are reviewed before action. |
## Best practices
- Confirm that application ownership and resource mapping are complete before using indirect-cost figures.
- Treat shared dependencies separately from directly owned resources.
- Review recommendation evidence with application and platform owners.
- Use the architecture diagram to find missing or unexpected relationships.
The frontend shows explicit restricted-access states for application and recommendation pages. Ask an administrator for the recommendations navigator permission if needed.
---
## Architecture Review
Source: `architecture/architecture-review.md`
URL: /architecture/architecture-review/
# Architecture Review
**Architecture Review** evaluates a described architecture for cost, service mapping, resilience, compliance, and improvement opportunities.
## Open Architecture Review
Go to **Architecture > Architecture Review**.
## Run a review
1. Enter a focused request in the prompt box. The UI suggests asking CloudVerse to estimate cost, map services, or assess resilience and compliance.
2. Add the provider, target region, and other scope options shown for the review.
3. Attach the supported architecture artifact when the upload control is available.
4. Submit the request.
5. Follow the **Review thread** as CloudVerse returns analysis.
6. Review **Key findings**, estimates, mapped services, risks, and recommended next steps.
7. Download or open the generated artifact when **Artifact ready** appears.
## Prompt examples
```text
Estimate the monthly cost of this AWS architecture in us-east-1 for 10 million API requests per month, 2 TB of data transfer, and a three-node production database.
```
```text
Review this Azure architecture for resilience gaps and identify lower-cost service or region alternatives that preserve the same availability target.
```
## Review outputs
| Output | Use it for |
|---|---|
| Cost estimate | Compare design choices before provisioning. |
| Service mapping | Confirm that the proposed architecture uses the intended provider services. |
| Resilience notes | Find single points of failure and missing failover assumptions. |
| Compliance notes | Identify data residency, encryption, network, or access-control questions. |
| Recommendations | Create engineering follow-up items with estimated impact and risk. |
## Best practices
- State workload scale, availability goals, data residency, and traffic assumptions.
- Use exact region names, such as those accepted by the region field.
- Validate generated estimates against current provider pricing and your negotiated discounts.
- Have architecture, security, and finance owners review material decisions.
Generated findings are decision support, not automatic approval to change production architecture.
---
## Agentic FinOps
Source: `automation/agentic-finops.md`
URL: /automation/agentic-finops/
# Agentic FinOps
**Agentic FinOps** is a conversational AI agent that helps you investigate cloud costs, interpret optimization data, draft savings plans, and run governed actions — all through natural language.
## When to use it
- You want to investigate a cost increase without manually building Cost Explorer filters.
- You need a quick summary of optimization opportunities for a specific team or environment.
- You want to draft a savings plan or prepare talking points for a FinOps review.
- You're exploring data and aren't sure where to start.
## Open Agentic FinOps
Go to **Automation > Agentic FinOps** from product navigation.
The page prepares a session for the active organization. If access is unavailable, check with your administrator — access may require a specific role or feature flag.
## Run an investigation
1. Confirm the active organization in the account menu.
2. Ask a specific question. Include the scope, time period, and provider where relevant.
3. Review the evidence and any proposed plan the agent returns.
4. Refine the question if the result is too broad or misses important context.
5. Use governed approval flows for any action the agent proposes — verify outcomes in Cost Explorer or Recommendations after actions are applied.
## Example questions
```
Which services drove this month's cost increase in our AWS production account?
```
```
Summarize high-confidence rightsizing opportunities for non-production EC2 instances.
```
```
What is our current Reserved Instance coverage for RDS, and where are the gaps?
```
```
Draft a plan to reduce Kubernetes spend in the platform namespace by 20%.
```
```
Which teams have the highest AI token spend this quarter?
```
## Best practices
- **Be specific** — include provider, account, service, environment, and date range in your questions.
- **Ask for evidence** — if the agent gives a recommendation, ask it to show the supporting data.
- **Verify before acting** — treat a conversational answer as a starting point, not proof of execution.
- **Keep humans in the loop** — always require human approval for production changes, commitment purchases, and destructive actions.
- **Iterate** — refine your question if the first response is too broad or misses context.
## Related pages
- [Workflows](workflows.md) — governed approval and automation policies
- [Recommendations](../optimization/recommendations.md) — the full recommendation catalog
- [Cost Explorer](../cost-management/cost-explorer.md) — verify agent findings with data
---
## Data Optimization
Source: `automation/data-optimization.md`
URL: /automation/data-optimization/
# Data Optimization
**Data Optimization** controls which data-platform optimizations can run automatically, require approval, or remain manual.
## Open Data Optimization
Go to **Automation > Data Optimization**.
## Configure governance
1. Confirm that a Data Platform source is connected.
2. Review the available optimization categories and their current mode.
3. Choose manual, approval-required, or automatic operation only where the UI permits it.
4. Review scope, risk, and ownership.
5. Save the control changes.
6. Monitor resulting approvals and outcomes in the related workflow and Data Platform pages.
## Best practices
- Begin with manual or approval-required settings.
- Separate production and non-production scopes.
- Require an owner and rollback plan for data-compute changes.
- Review query, pipeline, warehouse, and table recommendations in context.
- Confirm that data freshness and coverage are sufficient before automation.
## Example rollout
| Phase | Recommended setting | Exit criteria |
|---|---|---|
| Observe | Manual review | Data Platform owners agree the recommendations match real workloads. |
| Govern | Approval required | Owners, rollback steps, and change windows are documented. |
| Automate | Automatic for selected low-risk scopes | The same action has passed review repeatedly without incident. |
Use separate controls for production and non-production where available. Production data warehouses, pipelines, and tables should keep approval gates unless your organization has a tested rollback process.
---
## Automation
Source: `automation/index.md`
URL: /automation/
# Automation
CloudVerse automation helps teams move from investigation to governed action. Use it to draft plans, request approvals, dry-run changes, execute safe actions, schedule resources, and audit outcomes.
AI
Agentic FinOps
Ask questions, create plans, request approvals, and inspect outcomes through a conversational agent.
Govern
Workflows
Create policies for approval, dry run, execution, audit, and rollback.
Schedule
Resource Scheduling
Stop, start, suspend, reset, and schedule non-production resources.
Data
Data Optimization
Automate data-platform optimization signals such as query, storage, and capacity actions.
## Automation maturity
| Stage | Recommended use |
|---|---|
| Investigate | Use Agentic FinOps and recommendations to understand the opportunity. |
| Propose | Generate plans, evidence packages, and change proposals. |
| Approve | Route through owner, finance, platform, or ITSM approval. |
| Dry run | Validate credentials, current state, provider support, and expected impact. |
| Execute | Apply only approved actions within policy. |
| Verify | Reconcile state, savings, and audit history. |
Keep human approval for production, commitment, destructive, and high-risk changes.
---
## Resource Scheduling
Source: `automation/resource-scheduling.md`
URL: /automation/resource-scheduling/
# Resource Scheduling
**Resource Scheduling** reduces waste by starting and stopping supported resources on a defined schedule.
## Open Resource Scheduling
Go to **Automation > Resource Scheduling**. The menu can show a **New** badge for organizations that have not activated scheduling for AWS, GCP, or Azure.
## Create a schedule
1. Select the create-schedule action.
2. Enter the schedule name.
3. Choose the provider and target resources or scope.
4. Select the time zone.
5. Define start and stop times and the active days of the week.
6. Review the affected resources.
7. Save the schedule.
## Manage schedules
- Open a schedule to view **Scheduler Details**.
- Use the edit action to change its scope or timing.
- Confirm that the schedule is enabled.
- Review resource state and execution results after the first run.
## Best practices
- Use the resource owner’s time zone, not the administrator’s browser time zone.
- Exclude production and always-on resources unless explicitly approved.
- Account for holidays, maintenance, and overnight jobs.
- Start with a small resource set and verify one full start/stop cycle.
- Provide an exception process for teams that need temporary access outside the schedule.
Creating or changing schedules can alter cloud resource state. Use the organization’s approval process and verify cloud permissions before enabling a schedule.
---
## Workflows
Source: `automation/workflows.md`
URL: /automation/workflows/
# Workflows
**Workflows** lets you define optimization policies, route changes through approval queues, and automate low-risk actions — with full audit trails and governance controls.
## When to use it
- You want to operationalize optimization recommendations with consistent governance.
- You need an approval process before automation acts on resources.
- You want to track which optimization actions have been taken and by whom.
## Open Workflows
Go to **Automation > Workflows** from product navigation.
## Create a policy
1. Click the create-policy action.
2. Define:
- **Name** — a descriptive name for the policy
- **Target scope** — which accounts, regions, or resource types the policy applies to
- **Conditions** — rules that identify resources eligible for the action
- **Action** — what the policy should do (rightsize, stop, schedule, etc.)
- **Automation mode** — Manual review, Approval required, or Auto-execute
3. Configure notifications and approvers if using Approval required mode.
4. Review and save.
## Operate workflows
| Area | What to do |
|---|---|
| **Dashboard** | Review policy health, run counts, and pending actions |
| **Policy detail** | Inspect conditions, recent results, and history |
| **Approvals** | Accept or reject queued actions |
| **Automation Runs** | Review successful, failed, and skipped runs |
| **Controls** | Adjust global governance behavior |
## Best practices
- **Start in manual or approval-required mode** — build confidence in the policy before enabling automation.
- **Narrow the scope** — apply policies to specific accounts, regions, or tagged environments to limit blast radius.
- **Test on non-production** first.
- **Review all run types** — failed and skipped runs are as important as successful ones.
- **Keep approval evidence** — document why each action was approved or rejected.
## Related pages
- [Recommendations](../optimization/recommendations.md) — the source of optimization opportunities that workflows act on
- [Agentic FinOps](agentic-finops.md) — use the AI agent to investigate before creating a policy
- [Resource Scheduling](resource-scheduling.md) — a specific workflow type for scheduling resource start/stop
---
## Commitments
Source: `commitments/index.md`
URL: /commitments/
# Commitments
CloudVerse commitments help finance and platform teams plan, monitor, and execute committed-use discounts across AWS, Azure, and Google Cloud. Use this section when you need to understand coverage, inventory, forecasts, recommendations, approvals, or execution status.
## Primary workflow
1. Open [Commitment Optimizer](../optimization/commitment-optimizer.md).
2. Review current coverage, utilization, and expiring commitments.
3. Inspect inventory by provider, service family, region, term, and payment option.
4. Generate forecast-backed recommendations.
5. Submit approved recommendations for execution.
6. Reconcile execution runs and post-sync inventory.
## What CloudVerse tracks
| Area | What it answers |
|---|---|
| Coverage | Which eligible spend is covered by existing commitments? |
| Inventory | Which RIs, Savings Plans, reservations, and CUDs are active, expiring, unused, or underutilized? |
| Forecasting | What future usage should drive the next purchase or renewal? |
| Recommendations | What should be bought, renewed, resized, or allowed to expire? |
| Execution | Which recommendations were approved, denied, executed, reconciled, or rolled back? |
## Provider coverage
| Provider | Commitment families |
|---|---|
| AWS | Reserved Instances and Savings Plans |
| Azure | Reservations and savings-plan style commitments where available |
| Google Cloud | Committed Use Discounts |
## Related guides
- [Commitment Optimizer](../optimization/commitment-optimizer.md)
- [Recommendations](../optimization/recommendations.md)
- [Workflows](../automation/workflows.md)
- [Reports](../reports/reports.md)
---
## AI Economics
Source: `cost-management/ai-economics.md`
URL: /cost-management/ai-economics/
# AI Economics
**AI Compute Economics** monitors token usage, GPU spend, and model-level costs across AI and LLM services — from AWS Bedrock and Azure OpenAI to GCP Vertex AI and OpenAI's API.
## When to use it
- You want to understand which AI models, teams, or workloads are driving AI spend.
- You need to allocate AI infrastructure costs to teams or products.
- You want to compare cost efficiency across models (cost per million tokens).
- You're tracking the ROI of AI adoption alongside cloud spending.
## Open AI Economics
Go to **Cost Management > AI Economics** from product navigation.
## Analyze AI spend
### 1. Filter and group
Apply filters to narrow your analysis:
- **Provider** — AWS, Azure, GCP, or OpenAI
- **AI Provider** — specific AI service provider (e.g., OpenAI, Anthropic via Bedrock)
- **Service Family** — GPU compute, inference, embedding, etc.
- **Model** — specific model name (GPT-4, Claude, Gemini, Llama, etc.)
Choose granularity: **Daily**, **Weekly**, or **Monthly**.
Group trends by **Provider**, **AI Provider**, **Service Family**, or **Model**.
### 2. Review the Overview tab
The Overview tab shows total AI spend, token volume, and trend over the selected period.
### 3. Explore the Models tab
Select a model to open its detail drawer, which includes:
| Section | What it shows |
|---|---|
| **Spend** | Gross cost, net cost, credits, discounts, and tax |
| **Usage** | Token type, total tokens, spend, and cost per 1M tokens |
| **Services** | Spend by service, region, and account |
| **Allocation Tags** | Tag key, value, and coverage for cost attribution |
| **Evidence** | Source signals and row coverage |
## Supported AI services
CloudVerse AI recognizes spend from: Amazon Bedrock, Amazon SageMaker, Vertex AI (GCP), Gemini API, Azure OpenAI, Azure AI Search, and OpenAI API. See [Integrations](../integrations/index.md) to connect an AI platform.
## Best practices
- Compare token usage and spend together — a cost increase is not always a volume increase (prices change).
- Use allocation tags to identify unowned or shared AI spend.
- Check credits and discounts before comparing gross and net cost across periods.
- Treat blank model names as a data quality issue to resolve at the source.
- Set a budget on AI spend to catch runaway model usage early.
## Related pages
- [Unit Economics](unit-economics.md) — measure cost per AI workload output
- [Budgets](budgets.md) — set an alert when AI spend exceeds a threshold
- [OpenAI integration](../integrations/openai.md) — connect the OpenAI API
---
## Anomaly Detection
Source: `cost-management/anomalies.md`
URL: /cost-management/anomalies/
# Anomaly Detection
**Anomaly Detection** helps FinOps, finance, and engineering teams find unusual cloud spend, understand what changed, and review forecasted risk before it becomes a bill surprise.
CloudVerse AI separates anomaly review into observed spend changes and forecasted future risk. Use detected anomalies to investigate what already happened, and predicted anomalies to review what may happen next.
## When to use it
- A service, account, or organization total changed unexpectedly.
- You need to explain why the current bill is higher or lower than expected.
- You want to identify the account, service, or Perspective driving a spend change.
- You need to review forecasted spend risk before the risk date.
- You want a daily queue of spend changes that need finance or engineering review.
## Open Anomaly Detection
Go to **Cost Management > Anomalies & Forecasts** from product navigation.
Some tenants may still see the module as **Anomaly Management** during rollout.
## What the Dashboard shows
The Dashboard includes a **Spend increase anomalies** card for a quick 30-day health check.
| Field | Meaning |
|---|---|
| **Spend increase cases (30d)** | Number of open spend increase anomaly cases found in the last 30 days. |
| **Critical** | High-severity cases that should be reviewed first. |
| **Extra usage spend** | Estimated spend above expected usage for the open cases. |
| **vs last month** | Change in anomaly case count compared with the previous 30-day period. |
| **Top items** | The largest anomaly contributors, usually an organization-wide, account, service, or provider portfolio case. |
Click the arrow on the card to open **Anomalies & Forecasts** filtered to detected spend increases.
!!! note "Dashboard numbers are a summary"
The Dashboard card is a starting point. Use the anomaly table and drawer for the exact scope, affected dates, expected spend, actual spend, and investigation details.
## Tabs
| Tab | What it shows | Use it for |
|---|---|---|
| **Overview** | Summary of anomaly activity, impact, affected accounts, and review queues. | A quick read of what needs attention. |
| **Detected anomaly** | Observed spend increases and spend drops that already happened. | Explaining bill movement and finding root cause. |
| **Perspective anomalies** | Detected anomalies inside business scopes such as teams, products, or environments. | Routing anomalies to the right owner. |
| **Predicted anomaly** | Forecasted risks where future spend may exceed the expected range. | Reviewing likely future overspend before the risk date. |
## Spend increases and spend drops
Detected anomalies can be viewed by direction.
| Direction | Meaning | Typical action |
|---|---|---|
| **Spend increase** | Actual usage spend was above the expected range. | Investigate owner, deployment, usage, pricing, or configuration change. |
| **Spend drop** | Actual usage spend was below the expected range. | Confirm whether the drop is expected, missing data, service outage, migration, or shutdown. |
Spend drops are not always bad. Treat them as review signals. A drop can represent savings, but it can also indicate missing billing data, disabled workloads, failed ingestion, or a production issue.
## Scope levels
An anomaly is always tied to a scope. The scope tells you what the chart and impact numbers represent.
| Scope | Meaning | Example |
|---|---|---|
| **Organization-wide** | The anomaly is visible at total organization spend level. | Total usage spend is above expected. |
| **Provider portfolio** | The anomaly is across one provider portfolio. | Azure portfolio spend increased. |
| **Account** | The anomaly is for one cloud account, subscription, or project. | One Azure subscription increased. |
| **Service** | The anomaly is for one service inside one account. | Log Analytics spend inside one subscription increased. |
| **Perspective** | The anomaly is inside a business mapping such as team, product, or environment. | The Payments Perspective increased. |
!!! warning "Account vs service anomalies"
A service anomaly inside an account is not the same as total account spend. If the table or drawer says **Service anomaly**, compare it with Cost Explorer filtered to the same account **and** service. Comparing it with total account spend can make the anomaly look incorrect.
## Detected anomaly table
The detected anomaly table is the main review queue for observed spend changes.
| Column | Meaning |
|---|---|
| **Date** | The latest date in the anomaly case. |
| **Provider** | Cloud provider or source where the anomaly was found. |
| **Incident** | The affected scope, such as service, account, or organization-wide spend. |
| **Trend 30d** | Mini trend showing recent spend and anomaly points. |
| **Pattern** | How the spend changed, such as spike, recurring, reactivated spend, or cost drop. |
| **Impact** | Estimated difference between actual usage spend and expected usage spend. |
| **Expected usage** | The spend CloudVerse expected for the selected scope and date. |
| **Usage actual** | The actual usage spend observed for the selected scope and date. |
| **Impact %** | Percent difference between actual and expected spend. |
| **Status** | Review state, such as open, acknowledged, dismissed, or closed. |
Use filters to narrow by date range, direction, incident type, pattern, provider, severity, and status.
## Detected anomaly drawer
Select a detected anomaly row to open the drawer.
| Section | What to review |
|---|---|
| **Summary cards** | Scope, account, service, date, impact, actual spend, expected spend, severity, and status. |
| **Trend chart** | Actual spend compared with expected usage for the affected scope. Red points mark anomaly days. |
| **Affected accounts or services** | Accounts, services, or resources contributing to the anomaly. |
| **Next action** | Suggested investigation path, such as inspect service resources or verify a cost drop. |
| **Technical details** | Model and signal details for advanced review. |
### Drawer actions
| Action | Use it when |
|---|---|
| **Acknowledge** | The anomaly is valid and someone is reviewing it. |
| **Dismiss** | The anomaly is not useful, expected, duplicate, or not actionable. |
| **Closed** | The case is no longer active because the signal ended or the issue was resolved. |
Acknowledging or dismissing an anomaly changes its review state. It does not change the underlying spend data.
## Perspective anomalies
Perspective anomalies use the same detected anomaly logic, but the scope is a business view instead of only provider, account, or service.
Use Perspective anomalies when each team, product, cost center, or environment needs its own anomaly review queue.
Before relying on Perspective anomaly results, confirm the Perspective rules correctly map spend to the expected owners. If a Perspective has incomplete rules, anomalies may appear under the wrong business scope or not appear at all.
## Predicted anomaly table
Predicted anomalies are forecasted risks. They are not confirmed anomalies.
| Column | Meaning |
|---|---|
| **Review by** | Date by which the risk should be reviewed. |
| **Provider** | Provider where the risk is forecasted. |
| **Account** | Account, subscription, project, or service scope affected by the forecast. |
| **Trend** | Mini forecast trend showing recent actual spend and forecasted spend. |
| **Risk period** | Future date or date range where spend may exceed the expected limit. |
| **Possible extra spend** | Forecasted spend above the expected upper limit for the risk period. |
| **Signal** | Strength of the warning based on forecast confidence and risk evidence. |
Use the **View** filter to choose active future risks or other available forecast states.
## Predicted anomaly drawer
The predicted anomaly drawer explains why CloudVerse thinks future spend may exceed the expected range.
| Section | What it means |
|---|---|
| **Risk summary** | The affected scope, risk period, review date, possible extra spend, and signal. |
| **Spend forecast** | Historical spend, forecasted spend, expected upper limit, and risk days. |
| **Likely drivers** | Account or service areas most likely contributing to the forecasted risk. |
| **Why we trust this** | Simple confidence explanation based on recent pattern quality and available history. |
| **Technical details** | Forecast generation date, training cutoff, selected model, and data freshness. |
### Forecast chart terms
| Chart item | Meaning |
|---|---|
| **Actual spend** | Historical usage spend for the exact anomaly scope. |
| **Forecast spend** | Expected future usage spend predicted by the model. |
| **Expected upper limit** | The upper range CloudVerse considers normal for that scope. |
| **Risk days** | Future dates where forecast spend is above the expected upper limit. |
!!! note "Predicted anomalies are warnings"
A predicted anomaly means future spend may exceed the expected range. It is not a confirmed overspend until actual billing data arrives.
## Signal, severity, and confidence
These labels help prioritize review.
| Term | Meaning |
|---|---|
| **Severity** | Business impact of the detected anomaly, based mainly on spend difference and score. |
| **Signal** | Strength of a predicted anomaly warning. Strong signals should be reviewed first. |
| **Confidence** | How much evidence supports the anomaly or forecast. Higher confidence means the pattern is clearer and the data is more reliable. |
For end users, focus on the label and next action. Technical model terms are available for analysts who need to inspect how the signal was produced.
## Investigation workflow
### 1. Start with the right direction
Use **Spend increase** when the bill is unexpectedly higher. Use **Spend drop** when spend is unexpectedly lower or data may be missing.
### 2. Confirm the scope
Check whether the anomaly is organization-wide, account-level, service-level, or Perspective-level. Match the same scope when validating in Cost Explorer.
### 3. Read the chart
Compare actual spend with expected spend. Red points identify anomaly or risk days. For predicted anomalies, separate historical spend from forecasted spend.
### 4. Review likely drivers
Look for the account, service, or Perspective that contributes most to the impact. If the drawer shows a service anomaly, investigate that service first.
### 5. Validate in Cost Explorer
Open Cost Explorer and apply the same date range, provider, account, service, cost type, and currency. Do not compare service-level anomaly values with total account spend.
### 6. Decide the next action
Acknowledge the case if it needs review, dismiss it if it is expected or not useful, and record the reason when escalating to the owner.
## Common questions
### Why does the anomaly value not match my Dashboard total?
The anomaly may be for a service, account, or Perspective, while the Dashboard total may show the whole organization or account. Match the exact anomaly scope in Cost Explorer before comparing numbers.
### Why do I see a spend drop anomaly?
A spend drop means usage spend was lower than expected. It may be expected savings, but it can also indicate missing billing data, stopped workloads, outages, or ingestion delay.
### Why did an anomaly close?
An anomaly closes when the abnormal pattern stops appearing in the scoring window or when it is no longer active after reruns.
### Why is a predicted anomaly not visible after the risk date?
Predicted anomalies are future-risk warnings. After actual spend arrives, use detected anomalies and Cost Explorer to confirm what happened.
### Why do predicted anomaly amounts change?
Forecasts update as new billing data arrives. A newer forecast may increase, decrease, or remove a risk depending on the latest spend pattern.
## Best practices
- Review high-severity detected anomalies before lower-impact cases.
- Treat strong predicted anomalies as early warnings, not final proof.
- Always match provider, account, service, date range, cost type, and currency when validating in Cost Explorer.
- Use Perspective anomalies only after Perspective rules are verified.
- Dismiss expected cases so active queues stay useful.
- Review spend drops when data freshness or workload health matters.
## Related pages
- [Dashboard](dashboard.md) — review anomaly summaries from the main dashboard.
- [Cost Explorer](cost-explorer.md) — validate anomaly scope and spend details.
- [Perspectives](../organization/perspectives.md) — create business scopes for Perspective anomalies.
- [Notification Settings](../settings/notifications.md) — configure anomaly alert delivery.
- [Missing recommendations and anomalies](../troubleshooting/missing-recommendations.md) — troubleshoot empty anomaly results.
---
## Bill Review
Source: `cost-management/bill-review.md`
URL: /cost-management/bill-review/
# Bill Review
**Bill Review** lets you upload a PDF cloud bill and ask CloudVerse to summarize spend, identify cost drivers, surface optimization opportunities, or compare provider alternatives.
## Open Bill Review
Go to **Cost Management > Bill Review**.
## Review a bill
1. Use the **+** button to upload a PDF cloud bill.
2. In the prompt box, describe the analysis you need, such as summarizing the bill, surfacing cost drivers, or comparing alternatives.
3. Optionally choose the **current provider**, **comparison providers**, and target regions.
4. Select a service scope: **All**, **Compute**, **Storage**, **Database**, or **Analytics**.
5. Choose a commitment assumption: **On-demand only**, **Include 1-year commitments**, or **Include 3-year commitments**.
6. Choose an objective such as **Balanced flexibility and savings**, **Lowest monthly cost**, **Analytics modernization**, or **Quick wins only**.
7. Submit the request and review the **Review thread**.
Results can include **Bill summary**, **Spend breakdown**, **Top cost drivers**, and **Optimization opportunities**. **Saved bill context** shows retained context for the review.
## Prompt examples
```text
Summarize the top cost drivers in this AWS bill and identify quick-win savings opportunities that do not require architecture changes.
```
```text
Compare this analytics spend against Snowflake and Databricks alternatives using a balanced flexibility and savings objective.
```
## Best practices
- Remove or redact unnecessary sensitive information before upload.
- Confirm the currency, billing period, and provider.
- Treat estimates and cross-provider comparisons as planning inputs; validate them before procurement or migration decisions.
- Ask one focused question at a time for easier review.
If upload or export controls fail, see [Export and file issues](../troubleshooting/exports.md).
---
## Budgets
Source: `cost-management/budgets.md`
URL: /cost-management/budgets/
# Budgets
**Budgets** let you define spend limits for any scope, track progress against those limits, and alert your team when spend is approaching or exceeding the budget.
## When to use it
- You want to enforce spend limits for a team, project, environment, or account.
- You need early warning before a budget is breached.
- You want to track actual vs. budgeted spend over time.
## Open Budgets
Go to **Cost Management > Budgets** from product navigation.
## Create a budget
1. Click **Add budget** (or the equivalent create action).
2. Enter a budget name and select a scope — account, Perspective, service, or tag-based.
3. Set the budget period (monthly, quarterly, or annual) and the budget amount.
4. Configure alert thresholds — for example, alert at 75% and 100% of budget.
5. Set alert recipients, or configure delivery in **Settings > Notification Settings**.
6. Review and save.
## Review a budget
Select a budget from the list to open its detail view:
- **Actual spend** — how much has been spent in the current period
- **Budget progress** — spend as a percentage of budget
- **Variance** — difference between actual and budgeted spend
- **Forecast** — projected spend for the full period, based on current burn rate
- **Status** — on track, at risk, or exceeded
!!! warning "Don't rely on today's spend alone"
A budget can be within target today but forecasted to exceed by month-end. Always review the forecast alongside the current spend.
## Best practices
- Set budgets at a scope that has clear ownership — a team, a cost center, or a product.
- Use Perspectives or tags to define the budget scope accurately.
- Configure early-warning thresholds (e.g., 80%) to give teams time to course-correct.
- Retire or update budgets when organizational structures change.
- Reconcile budget scope with Cost Explorer using the same filters for consistency.
## Troubleshooting
Budget creation requires budget permissions. If you can view budgets but cannot create or edit them, ask an administrator to check your role. See [Login and access issues](../troubleshooting/login-access.md).
---
## Chargeback & Allocation
Source: `cost-management/chargeback-allocation.md`
URL: /cost-management/chargeback-allocation/
# Chargeback & Allocation
**Chargeback & Allocation** turns normalized cloud, Kubernetes, data-platform, and SaaS billing into an auditable monthly allocation of cost to the teams, products, cost centers, and business owners responsible for it.
Use Chargeback & Allocation to classify direct and shared cost, apply allocation rules, reconcile allocated totals with source billing, and publish an authoritative monthly close for showback or chargeback reporting.
## When to use it
- You need each team, product, business unit, or cost center to see the cost assigned to it.
- You want to distribute shared platform, support, tooling, networking, warehouse, or Kubernetes costs fairly.
- You need to allocate provider credits, discounts, refunds, and common costs.
- You want monthly showback or chargeback numbers that tie back to source billing.
- You need finance, FinOps, and engineering teams to review the same allocation ledger.
## Before you start
Chargeback depends on complete source billing, clear ownership, and allocation rules that match your operating model.
Before closing a month, confirm:
- Billing ingestion is complete for the month.
- Perspectives, tags, accounts, projects, and resource ownership signals are up to date.
- Shared cost pools and allocation rules have been agreed with finance and service owners.
- The close period is open if rule changes or rebuilds are required.
- A chargeback worker is available to process queued runs.
!!! warning "Published months should be stable"
Freeze a published month after finance review so its numbers cannot drift because of late rule changes or rebuilds.
## Open Chargeback & Allocation
Go to **Cost Management > Chargeback & Allocation** from product navigation.
The active tab is reflected in the URL, for example:
```text
/chargeback-allocation?tab=overview
```
## Choose the right tab
| Tab | Use it for | Close dependency |
|---|---|---|
| **Overview** | Executive summary for the selected month, including total allocated cost, provider split, top recipients, trends, and reconciliation health. | Requires an authoritative run. |
| **Credit Allocation** | Review how provider credits, discounts, and refunds are distributed. | Independent of monthly close status. |
| **Chargeback Ledger** | Drill into the detailed allocation receipt by recipient, component, account, region, resource, and line item. | Requires an authoritative run and showback projections. |
| **Close** | Run, monitor, validate, publish, or diagnose the monthly chargeback close. | Shows the latest run, including failed or non-authoritative runs. |
## Review the Overview
Open the **Overview** tab for the selected month.
Use it to answer:
- What was charged back this month?
- Which providers contributed the most allocated cost?
- Which teams, products, cost centers, or recipients received the highest allocation?
- Did allocated cost reconcile with source billing?
- How did allocation trend compared with recent months?
Numbers on the Overview reflect the authoritative run for the selected month. If the month does not have an authoritative run yet, the Overview is empty. Check the **Close** tab to see the latest run status and failing step.
## Review the Chargeback Ledger
Open the **Chargeback Ledger** tab for the detailed allocation receipt.
The ledger shows:
| Area | What to review |
|---|---|
| **Recipient summaries** | Total cost charged to each recipient. |
| **Components** | Direct usage, shared allocation, credits, refunds, and other allocation components. |
| **Drill-downs** | Account, region, resource, and line-item detail behind the recipient total. |
| **Reconciliation** | Whether allocated cost ties back to source billing within tolerance. |
Use ledger drill-downs when a recipient asks why a number changed, why a shared cost was assigned, or which resources contributed to the total.
The ledger reads materialized showback projection tables. If those projections are missing for an authoritative run, CloudVerse can rebuild them on demand from the authoritative ledger.
## Review Credit Allocation
Open the **Credit Allocation** tab to review how provider credits, discounts, and refunds are distributed.
Credit Allocation is driven by credit and discount configuration plus product cost. It can render even when the selected month has not completed an authoritative chargeback close.
Review this tab before publishing finance-facing numbers so credit handling is clear to recipients.
## Manage allocation rules
Allocation rules move cost from a source onto recipients during close.
| Concept | Meaning |
|---|---|
| **Cost pool** | A bucket of cost. Direct pools map to an owner. Shared pools hold cost that must be spread across recipients. |
| **Perspective** | An organizational lens such as business unit, team, product, environment, or cost center. Dynamic Perspective leaves can receive allocated cost. |
| **Direct allocation** | Cost is attributed as-is to the owner or recipient. |
| **Shared allocation** | Shared or pooled cost is spread using a rule. |
### Create a Perspective-to-Perspective rule
Use a Perspective-to-Perspective rule when direct cost from one Perspective should be allocated to the leaves of another Perspective. This is common for cross-charging between organizational views.
Go to **Allocation Management > Allocation Rules**, then click **Create**.
1. For **Rule type**, choose **Allocate to Perspective**.
2. Select the **Source Perspective** whose leaves are the cost origin.
3. Select the **Target** or **Receiver Perspective** whose leaves receive the cost.
4. Choose the allocation **Basis**:
- **Proportional** - spread cost in proportion to each target leaf's own direct cost.
- **Fixed %** - spread cost using explicit percentages. The percentages must sum to 100%.
5. Save the rule.
The rule executes on the next close or rebuild for the period. For Perspective rules, the source pool is normally resolved automatically from the source Perspective.
### When rule changes take effect
Creating, editing, or toggling a rule for an open period triggers a durable full rebuild of that period so the ledger reflects the change.
Frozen periods are protected. Reopen the period before changing rules that affect published numbers.
## Run a monthly close
Open the **Close** tab to run and publish a month.
The Close tab shows:
- Close readiness checks, including source completeness, rule execution, and reconciliation tolerance.
- Current run status and step progress.
- Failed or non-authoritative runs for diagnosis.
- Publish controls for promoting a successful run to authoritative.
### Close lifecycle
A close run processes source billing through classification, allocation, reconciliation, projection materialization, and publication.
| Step | What it does |
|---|---|
| `INGEST_SOURCE_FACTS` | Loads and validates normalized billing for the month. |
| `CLASSIFY_FACTS_TO_POOLS` | Assigns each cost line to a cost pool. |
| `BUILD_DIRECT_EFFECTIVE_COST` | Computes direct cost per pool. |
| `BUILD_POOLS` | Builds pool balances. |
| `ALLOCATE_POOLS` | Applies allocation rules onto recipients. |
| `FINALIZE_CLOSE` | Assembles the reconciled ledger and enforces the reconciliation gate. |
| `MATERIALIZE_PROJECTIONS` | Builds showback projection tables used by Overview and Ledger. |
| `VALIDATE_RUN_INTEGRITY` | Verifies projection and total consistency. |
| `FINALIZE_RUN_STATUS` | Marks the run authoritative and visible to users. |
A run becomes visible on Overview and Ledger only after `FINALIZE_RUN_STATUS` completes successfully.
### Authoritative runs and freeze
A month can have multiple runs, but only one run is authoritative.
Overview and Ledger use the authoritative run. If there is no authoritative run, those tabs are empty even if an earlier step completed successfully.
Use freeze after publishing a reviewed month. A frozen authoritative month is locked so its numbers cannot drift.
## Technical data flow
Chargeback uses analytical billing data for source and ledger computation, then materializes showback projections for the UI.
```text
Provider billing
-> normalized billing facts
-> chargeback engine
-> cost pools
-> allocation rules
-> reconciled ledger
-> showback projections
-> Overview and Chargeback Ledger
```
| Layer | Stores | Purpose |
|---|---|---|
| Analytical billing store | Normalized billing facts, source facts, and authoritative ledger entries. | Heavy cost analysis, source lineage, and reconciliation. |
| Operational store | Run state, run steps, showback projections, recipient summaries, drill summaries, line-item detail, and overview snapshots. | UI status, fast drill-down, and monthly showback views. |
### Per-tab data behavior
| Tab | Reads from | Needs materialization? | Requires authoritative run? |
|---|---|---|---|
| **Overview** | Recipient summaries and overview snapshot, with reconciliation fallback where available. | Partial. | Yes. |
| **Chargeback Ledger** | Showback recipient, drill, and line-item projections; can rebuild from the ledger when needed. | Yes. | Yes. |
| **Close** | Run and step status, close readiness, and reconciliation checks. | No. | No. |
| **Credit Allocation** | Credit and discount configuration plus product cost. | No. | No. |
If projection materialization fails after the ledger reconciles, Overview may degrade to reconciliation numbers and Ledger may rebuild lazily. This only works when an authoritative run exists. If the run never reaches `FINALIZE_RUN_STATUS`, the data tabs remain empty.
### Detail levels
Ledger drill-downs can include these detail levels:
| Detail level | Meaning |
|---|---|
| `ACCOUNT_SCOPE` | Account, subscription, project, workspace, or comparable billing scope. |
| `REGION` | Provider region or location dimension. |
| `RESOURCE` | Resource-level lineage where available. |
| `LINE_ITEM` | Finest-grain source billing line. |
`LINE_ITEM` is the highest-cardinality level and can dominate projection materialization cost for large organizations.
## Best practices
- Separate direct cost from shared cost before defining allocation rules.
- Reconcile allocated totals with source billing for the same period and cost basis.
- Publish only after source completeness, rule execution, and reconciliation checks pass.
- Freeze reviewed months so published chargeback figures stay stable.
- Review allocation rules quarterly and after reorganizations, tag changes, account additions, or major platform changes.
- Use Perspectives with clear owners and high coverage before relying on Perspective-based rules.
- Treat `LINE_ITEM` detail carefully for very large organizations because it can create large projection volumes.
## Troubleshooting
### A month is empty or all zero
Most often, the selected month has no authoritative run.
Open the **Close** tab and check the latest run and failing step.
| Cause | What to check |
|---|---|
| **No authoritative run** | Confirm the run reached `FINALIZE_RUN_STATUS` and was published as authoritative. |
| **Reconciliation gate failed** | Check whether allocated cost ties back to source billing within tolerance. Look for mismatched holding, coverage, or shared buckets. |
| **Incomplete ingestion** | Confirm all provider billing dates and accounts were ingested for the period. |
| **Materialization timeout** | Review whether `MATERIALIZE_PROJECTIONS` failed for a large organization or high line-item volume. |
| **No worker** | Confirm a chargeback worker is running so queued runs do not remain pending. |
### A large organization fails during materialization
If `FINALIZE_CLOSE` succeeds but `MATERIALIZE_PROJECTIONS` fails, the ledger may reconcile but the run may never become authoritative. In that state, Overview and Ledger can appear empty while earlier months still show data.
This can happen when `LINE_ITEM` detail produces a very large number of projection rows.
Recommended remediation direction:
- Materialize projections in batches instead of one long transaction.
- Keep only the minimal atomic swap in a short transaction.
- Consider thresholding or gating `LINE_ITEM` detail for very large organizations.
- Do not rely only on increasing transaction timeout.
## Glossary
| Term | Meaning |
|---|---|
| **Source facts** | Normalized per-line billing for a month and provider. |
| **Cost pool** | A direct or shared bucket of cost used during allocation. |
| **Perspective** | A business lens such as team, product, business unit, environment, or cost center. |
| **Allocation rule** | Logic that moves cost from a source pool or Perspective onto recipients. |
| **Ledger** | The reconciled record of allocated cost. |
| **Projection** | Denormalized showback tables used by the UI for fast summaries and drill-downs. |
| **Authoritative run** | The single published monthly run shown by Overview and Ledger. |
| **Freeze** | A lock that prevents a published month from changing. |
## Related pages
- [Perspectives](../organization/perspectives.md) - build the business scopes used by allocation rules.
- [Cost Explorer](cost-explorer.md) - compare allocated results with source cost views.
- [Budgets](budgets.md) - monitor budget consumption after allocation is stable.
- [Login and access issues](../troubleshooting/login-access.md) - troubleshoot missing access to Chargeback & Allocation.
---
## Cost Explorer
Source: `cost-management/cost-explorer.md`
URL: /cost-management/cost-explorer/
# Cost Explorer
**Cost Explorer** lets you filter, group, and drill into cloud spend across any combination of provider, account, service, region, tag, and business perspective.
## When to use it
- You received an unexpected bill or budget alert and need to find the cause.
- You want to understand which services, accounts, or teams are driving spend.
- You need to prepare data for a cost report or chargeback reconciliation.
- You are comparing spend between two time periods, regions, or environments.
## Open Cost Explorer
Go to **Cost Management > Cost Explorer** from product navigation.
## Analyze spend
### 1. Set the date range and granularity
Select a date range and choose **Daily**, **Weekly**, or **Monthly** granularity. Narrower ranges with daily granularity are best for investigating a spike; monthly granularity is better for trend analysis.
### 2. Choose a Group By dimension
| Group By | Use it to |
|---|---|
| Provider | Compare spend across AWS, Azure, GCP, etc. |
| Account / Subscription / Project | See spend per cloud account |
| Service | Find top services by cost |
| Region | Identify regional spend distribution |
| Tag | Break down by team, environment, or cost center tag |
| Perspective | View spend mapped to business teams or products |
### 3. Apply filters
Narrow results using **Providers**, **Accounts**, **Regions**, **Services**, **Cost Type**, **Pricing Model**, and **Charge Type**. Use the advanced filter expression builder for provider-specific fields or tag-based filtering: select a provider, choose a field or tag key, select values, and apply.
### 4. Review and drill in
Review the chart and table together. Click any row to open a detail page:
- **Account detail** — cost breakdown for the selected cloud account
- **Service detail** — cost breakdown for the selected service
- **Asset detail** — spend and configuration for an individual resource
### 5. Export
Use the **Export** action to download cost data for offline analysis. Always record the date range, granularity, cost type, and currency alongside exported figures.
## Tips
- Start broad, then add one filter at a time to isolate the cause of a change.
- Use **Perspectives** filter only after confirming Perspective rules cover the accounts and tags in scope.
- Reset all filters when a query unexpectedly returns zero results.
- For chargeback reconciliation, use the same cost type and date range as in your allocation report.
## Related pages
- [Anomaly Detection](anomalies.md) — investigate spend changes with ML-backed signals
- [Budgets](budgets.md) — compare actual spend against budget limits
- [Chargeback & Allocation](chargeback-allocation.md) — allocate costs to teams
- [Perspectives](../organization/perspectives.md) — create business views for filtering
## Troubleshooting
- **Filters return no results** — See [Unexpected filter results](../troubleshooting/filters.md)
- **Export fails or is empty** — See [Export issues](../troubleshooting/exports.md)
- **Data missing for a provider** — See [Missing or delayed data](../troubleshooting/missing-delayed-data.md)
---
## Dashboard
Source: `cost-management/dashboard.md`
URL: /cost-management/dashboard/
# Dashboard
The **CloudVerse AI Dashboard** gives you a high-level summary of cloud spend, optimization opportunities, anomaly signals, and platform activity — all in one view.
## When to use it
Use the Dashboard for a daily FinOps health check, an executive briefing, or as a starting point before drilling into Cost Explorer or Recommendations.
## Open the Dashboard
Select **Dashboard** in the product navigation.
## What's on the Dashboard
| Section | What it shows |
|---|---|
| **Spend summary** | Total cost for the current period, comparison to prior period, and trend direction |
| **Optimization signals** | Count and potential value of active recommendations |
| **Anomalies** | Recent detected or predicted spend anomalies |
| **Budget status** | Budgets at risk of exceeding their limit |
| **Provider announcements** | Relevant cloud provider updates that may affect your costs |
## How to use it
1. Confirm the active organization in the account menu (top-right).
2. Review summary cards — a change in spend or an anomaly alert is a prompt to investigate further.
3. Click any card or drill-down link to open the relevant detail page (Cost Explorer, Recommendations, Anomalies, etc.).
4. Check **Cloud provider announcements** when a service or pricing change may explain a cost movement.
!!! note "Empty cards"
A card showing no data can mean the underlying source is not yet connected, billing ingestion is still in progress, or the active organization scope has no matching records. See [Missing or delayed data](../troubleshooting/missing-delayed-data.md).
## Best practices
- Treat the Dashboard as a signal layer — use it to identify a question, then verify it in Cost Explorer, Recommendations, or Anomaly Management.
- Compare currency and date range before sharing dashboard totals with stakeholders.
- Check provider announcements alongside anomaly alerts — pricing changes can look like unexpected spend spikes.
## Related pages
- [Cost Explorer](cost-explorer.md) — analyze the spend you see on the Dashboard in detail
- [Anomaly Detection](anomalies.md) — investigate anomaly signals further
- [Recommendations](../optimization/recommendations.md) — act on optimization opportunities
- [Budgets](budgets.md) — check budget status in full
---
## Analyze Spend
Source: `cost-management/index.md`
URL: /cost-management/
# Analyze Spend
CloudVerse helps teams answer why spend changed, who owns it, and what should happen next. This section covers dashboards, Cost Explorer, anomalies, budgets, bill review, and reports.
Overview
Dashboard
Track spend, savings, anomalies, and high-level trends across connected providers.
Investigate
Cost Explorer
Filter and group costs by provider, account, service, region, tag, perspective, and time.
Detect
Anomaly Detection
Find unexpected spend changes and route alerts to the right owners.
Control
Budgets
Track budget consumption, forecast variance, and threshold-based alerts.
Report
Reports
Create templates, schedules, exports, and stakeholder-ready views.
Review
Bill Review
Summarize monthly changes and prepare finance-facing explanations.
## Common workflows
| Goal | Path |
|---|---|
| Explain a cost spike | [Cost Explorer](cost-explorer.md) -> filter date and service -> compare previous period -> review [Anomalies](anomalies.md). |
| Prepare a monthly report | [Reports](../reports/reports.md) -> choose template -> schedule delivery -> add [Bill Review](bill-review.md) context. |
| Hold a team accountable | [Perspectives](../organization/perspectives.md) -> [Chargeback & Allocation](chargeback-allocation.md) -> [Unit Economics](unit-economics.md). |
| Prevent budget surprises | [Budgets](budgets.md) -> configure forecast thresholds -> route notifications. |
## Data requirements
Spend analysis requires billing data from at least one provider. More accurate anomaly, recommendation, and allocation results require tags, resource inventory, and usage telemetry.
---
## Unit Economics
Source: `cost-management/unit-economics.md`
URL: /cost-management/unit-economics/
# Unit Economics
**Unit Economics** helps you understand cloud cost in terms of useful units: customers, users, API calls, transactions, orders, tokens, GB processed, workflows, employees, or service-level usage.
CloudVerse AI separates Unit Economics into two views:
- **Business Unit Economics** — perspective-level cost divided by a business volume, such as cost per customer or cost per API call.
- **Service Unit Cost** — service-level technical cost divided by provider usage, such as cost per GB stored or cost per runtime hour.
## When to use it
- You want to know whether cloud cost is scaling efficiently with business activity.
- You need cost per customer, user, API call, transaction, token, or another business unit.
- You want engineering teams to inspect technical cost per service usage unit.
- You need to compare business growth, usage growth, and cloud cost in one view.
- You want a simple metric that finance, product, and engineering teams can discuss together.
## Before you start
Unit Economics starts from a **Dynamic Perspective**. The Perspective defines the cost scope: team, application, cost center, environment, product, or another business view.
Before configuring a business unit, confirm the Perspective includes the correct cloud accounts, projects, services, tags, virtual tags, or master tags.
!!! warning "The Perspective controls the numerator"
Unit Economics uses the selected Perspective and page filters to calculate cost. If the Perspective rules are incomplete, the cost per unit will also be incomplete.
## Open Unit Economics
Go to **Cost Management > Unit Economics** from product navigation.
Select:
1. A **Dynamic Perspective**.
2. A **Date range**.
3. A **Grain** — Daily or Monthly.
4. Any provider, account, region, service, cost type, or cost metric filters.
The cost shown in Unit Economics follows the same Perspective cost source used by Cost Explorer and dashboard-style cost views.
## Choose the right tab
| Tab | Use it for | Example |
|---|---|---|
| **Business Unit Economics** | Business-facing cost per unit for the selected Perspective. | Cost per customer, API call, transaction, order, or token. |
| **Service Unit Cost** | Technical cost per service usage unit inside the Perspective. | Cost per GB stored, runtime hour, request, or slot hour. |
Use **Business Unit Economics** when you already know the business volume. Use **Service Unit Cost** when you want to inspect cloud service efficiency before choosing a business denominator.
## Business Unit Economics
Business Unit Economics divides filtered Perspective cost by a business volume you provide.
For example:
```text
Cost per customer = filtered Perspective cost / active customers
Cost per 1K API calls = filtered Perspective cost / (API calls / 1,000)
Cost per 1M tokens = filtered Perspective cost / (tokens / 1,000,000)
```
If no business unit is configured yet, the page still shows the selected Perspective and cost context, then guides you to configure a business unit.
### Configure a Business Unit
Click **Configure Business Unit**.
The setup drawer has three steps.
### 1. Choose a business unit
Choose what you want to measure cost per.
| Option | Use it when |
|---|---|
| **Cost per Customer** | You track active customers, tenants, or paying accounts. |
| **Cost per User** | You track active users, monthly users, or seats. |
| **Cost per API Call** | You run APIs, gateways, inference endpoints, or request-driven systems. |
| **Cost per Transaction** | You process payments, workflows, events, or business transactions. |
| **Cost per Order** | You run commerce, marketplace, fulfillment, or order-processing systems. |
| **Cost per GB Processed** | You process data, files, logs, or analytics workloads. |
| **Cost per Workflow** | You run jobs, pipelines, automations, or completed workflows. |
| **Cost per Employee** | You measure internal tools or shared services by employee count. |
| **Cost per Token** | You track AI or LLM workloads by input/output token volume. |
| **Custom** | Your business unit is not covered by the standard templates. |
CloudVerse AI uses the selected template to prefill names, labels, and reporting defaults. You can still adjust the metric name and unit label before publishing.
!!! tip "Start simple"
Choose one primary business unit first. Add more only after the first metric is stable and trusted.
### Display rate
**Display rate** changes only how the final rate is shown. It does not convert or change the values you enter.
| Display rate | Example with 1,000,000 API calls and $10,000 cost |
|---|---|
| **Per API call** | $0.01 / API call |
| **Per 1K API calls** | $10 / 1K API calls |
| **Per 1M API calls** | $10,000 / 1M API calls |
Smart defaults are applied by template.
| Business unit | Typical display |
|---|---|
| Customer, user, order, GB processed, workflow, employee | Per unit |
| API call, transaction | Per 1K units |
| Token | Per 1M tokens |
### 2. Add values
Choose how business volume arrives.
| Source | What it does | Best for |
|---|---|---|
| **Manual grid / CSV** | Enter values in the drawer or upload the generated CSV template. | Fast setup, finance-owned monthly values, first backfill. |
| **API push** | Create a source that receives observations through the API. | Automated daily or monthly updates from an internal system. |
| **Warehouse query push** | Store query metadata and push query results into CloudVerse AI. | Teams that calculate business volume in a warehouse, then push the results. |
For **Manual grid / CSV**, choose:
- **Grain** — Daily or Monthly.
- **Metric value date range** — the period where you want to enter business values.
- Values for the generated periods.
You can also click **Download CSV template**, fill it, and upload it back with **Upload filled CSV**.
CSV format:
```csv
period,value,label
2026-06-01,12000,
2026-07-01,12600,
```
| CSV column | Required | Meaning |
|---|---|---|
| `period` | Yes | Date for the period. Monthly values are normalized to the first day of the month. |
| `value` | No | Business volume for that period. Blank means missing. |
| `label` | No | Optional label for future breakdowns. It is not used in the current report. |
### Value rules
| Value | Meaning | Result |
|---|---|---|
| Blank | Missing period. | Excluded from cost-per-unit calculation and shown as a warning. |
| `0` | Real zero denominator. | Accepted, but rate is hidden for that period. |
| Negative number | Invalid business volume. | Blocks preview and publish. |
| Positive number | Valid business volume. | Used in cost-per-unit calculation. |
You can publish with partial data if at least one valid period exists. Missing values reduce coverage and appear as warnings.
!!! note "Blank is not zero"
Leave a period blank when you do not have the value yet. Enter `0` only when the true business volume was zero.
### 3. Preview and publish
The preview shows:
- Total filtered cost.
- Entered business volume.
- Average cost per unit.
- Period coverage.
- Cost-weighted coverage.
- Missing period warnings.
- Zero-denominator warnings.
- Any blockers that must be fixed.
Click **Publish** when the preview looks correct. After publishing, the drawer closes and the Business Unit Economics dashboard refreshes.
## Read the Business Unit Economics dashboard
When a business unit is configured, the dashboard shows:
| Field | Meaning |
|---|---|
| **Cost per unit** | Filtered cost divided by business volume, using the selected display rate. |
| **Total Allocated Cost** | Cost for the selected Perspective, date range, grain, and filters. |
| **Business Volume** | Sum of matching business values for the report period. |
| **Status** | Whether the metric is configured, pending data, partial, stale, or blocked by grain mismatch. |
| **Business trend** | Cost bars, business-volume line, and cost-per-unit line over time. |
| **Guardrails** | Warnings about missing values, zero denominators, low coverage, or incompatible grain. |
### Grain rules
| Metric grain | Report grain | Result |
|---|---|---|
| Daily | Daily | Supported. |
| Daily | Monthly | Supported. Daily values roll up to monthly totals. |
| Monthly | Monthly | Supported. |
| Monthly | Daily | Blocked. Daily rates cannot be calculated from monthly-only business values. |
!!! warning "Monthly metrics cannot create daily rates"
If your business data is monthly, use Monthly grain on the page. To see daily cost per unit, configure or import daily business values.
## Service Unit Cost
Service Unit Cost helps engineering teams inspect technical cost efficiency inside the selected Perspective.
It groups Perspective cost by tower and service, then shows candidate usage units for the selected service.
Use it to answer questions like:
- Which services drive the selected Perspective cost?
- What usage units are available for each service?
- Is cost increasing because usage increased or because unit cost changed?
- Which service should be investigated before choosing a business metric?
### Inspect service-level cost
1. Open **Service Unit Cost**.
2. Select a tower or service from **Services by tower**.
3. Review the selected service cost.
4. Choose a usage candidate.
5. Read the trend: service cost, usage, and cost per unit.
### Usage candidates
A usage candidate is a provider usage signal available for the selected service, such as requests, GB-month, hours, GB processed, or token count.
Some services have multiple candidates because providers expose multiple meters for the same service.
!!! warning "Do not compare unrelated units"
A shared label such as `byte-seconds` or `requests` can mean different things across services. Service Unit Cost calculates usage candidates per service so unrelated units are not mixed together.
## Common workflows
### SaaS cost per customer
1. Select the application or product Perspective.
2. Open **Business Unit Economics**.
3. Click **Configure Business Unit**.
4. Choose **Cost per Customer**.
5. Use Monthly grain if customer counts are monthly.
6. Enter or upload active customer counts.
7. Preview and publish.
### API cost per 1K calls
1. Select the API or platform Perspective.
2. Choose **Cost per API Call**.
3. Keep the suggested display rate, usually **Per 1K API calls**.
4. Use Daily grain if API request counts are available daily.
5. Enter values, upload CSV, or publish an API push source.
6. Preview and publish.
### Data platform cost per GB processed
1. Select the data platform, pipeline, or analytics Perspective.
2. Choose **Cost per GB Processed**.
3. Enter daily or monthly processed GB values.
4. Review cost per GB processed and coverage.
5. Use Service Unit Cost to inspect which cloud services drive the result.
### AI cost per 1M tokens
1. Select the AI workload Perspective.
2. Choose **Cost per Token**.
3. Use the suggested display rate, usually **Per 1M tokens**.
4. Import token volume from your application, API logs, or warehouse.
5. Preview and publish.
## Common questions
### Why does Business Unit Economics need a Perspective?
The Perspective defines which cloud costs are included. Business volume is only meaningful when it is matched to the right cost scope.
### Why is my cost per unit unavailable?
Common reasons:
- No business values exist for the selected period.
- The business metric is monthly but the page is set to Daily grain.
- The denominator is zero for the period.
- The selected filters return no cost.
### Why does coverage matter?
Coverage shows how much of the selected cost period has matching business values. Low coverage means the cost-per-unit trend may not represent the whole period.
### Why can I publish with missing values?
Missing values are allowed so teams can start with the data they have and backfill later. Missing periods are excluded from the rate calculation and shown as warnings.
### Why do Service Unit Cost candidates show provider meters?
Provider billing data often has multiple meters per service. CloudVerse AI shows the candidates separately so you can choose the unit that best explains the service cost.
## Troubleshooting
| Problem | What to check |
|---|---|
| No cost appears | Confirm the Perspective, date range, provider, account, region, service, cost type, and cost metric filters. |
| Business unit is not configured | Click **Configure Business Unit** and publish at least one valid value or source. |
| Cost per unit is unavailable | Check for missing values, zero denominators, or a monthly metric viewed with Daily grain. |
| API push source is pending | Push observations into the published source, then refresh the report. |
| CSV upload does not fill values | Confirm the `period` values are inside the selected date range and match the selected grain. |
| Service Unit Cost has no usage candidates | Usage data may be unavailable for the org, provider, service, or selected date range. |
| Unit Economics cost does not match another report | Compare the same Perspective, date range, provider, cost type, and cost metric. |
For missing provider data, see [Missing or delayed data](../troubleshooting/missing-delayed-data.md).
## Best practices
- Confirm the Perspective scope before trusting cost per unit.
- Start with one business metric, then improve coverage over time.
- Use Monthly grain when business values are only available monthly.
- Use Daily grain only when daily values are reliable.
- Keep unit definitions stable. Changing what counts as a customer, order, or transaction breaks trend comparisons.
- Treat missing values as data-quality work, not as zero activity.
- Use Service Unit Cost to investigate technical drivers behind a business cost-per-unit change.
## Related pages
- [Cost Explorer](cost-explorer.md) — validate filtered cost using the same scope.
- [Perspectives](../organization/perspectives.md) — create and maintain business cost scopes.
- [Anomaly Detection](anomalies.md) — investigate unexpected spend changes.
- [Budgets](budgets.md) — compare spend against budget targets.
- [Reports](../reports/reports.md) — share recurring cost views.
---
## Data Platform
Source: `data-platform/data-platform.md`
URL: /data-platform/data-platform/
# Data Platform
The **Data Platform** section tracks cost, usage, ownership, allocation, and optimization across data compute and storage.
## Pages
- **Overview**
- **Warehouses & Clusters**
- **Pipelines & Jobs**
- **Queries**
- **Tables & Datasets**
- **Optimization**
## Use the Data Platform pages
1. Open **Data Platform > Overview** and confirm that a platform source is connected.
2. Review KPI cards and coverage notices.
3. Open the entity page that matches the investigation.
4. Filter the table and review **Name**, **Type**, **Platform**, **Provider**, **Cost**, **Change**, **Owner**, **Allocation**, **Recommendation**, and **Action**.
5. Open **Optimization** to review supported recommendations.
Use **Warehouses & Clusters** for compute assets and idle time; **Pipelines & Jobs** for execution activity and ownership; **Queries** for expensive, frequent, inefficient, or high-scan patterns; and **Tables & Datasets** for storage, scan, growth, and table-level cost drivers.
## Empty and partial states
The UI distinguishes:
- **No data platforms connected**
- **Ingest pending**
- **No data for this selection**
- **Access restricted**
- **Data Platform data is temporarily unavailable**
- **Partial coverage**
Use **Connect Data Platform** when offered. If ingestion is pending, wait for the source to finish before treating an empty table as a problem.
## Best practices
- Assign owners to expensive warehouses, pipelines, queries, and datasets.
- Compare cost change with workload activity.
- Review optimization actions with the data-platform owner.
---
## Data & AI Economics
Source: `data-platform/index.md`
URL: /data-platform/
# Data & AI Economics
CloudVerse tracks the economics of AI workloads, data warehouses, query execution, pipelines, storage, and allocation metrics. Use this section to connect technical usage to spend, business units, and optimization actions.
AI
AI Economics
Analyze GPU, model, token, provider, and runtime evidence where sources are available.
Warehouse
Data Platform
Understand Snowflake, Databricks, BigQuery, pipeline, table, and query cost drivers.
Optimize
Data Optimization
Review capacity, storage, query, and automation opportunities for data platforms.
Allocate
Unit Economics
Map costs to business metrics, unit data sources, and derived unit metrics.
## Source coverage
| Source | Typical signal |
|---|---|
| Cloud billing | AI service spend, GPU instance cost, warehouse infrastructure cost |
| Runtime telemetry | Token usage, model usage, request counts, latency, workload metadata |
| Data platform metadata | Warehouses, capacities, tables, query runs, pipelines, storage |
| Tags and labels | Product, team, environment, model, workload, and allocation basis |
## Recommended setup
1. Connect cloud billing first.
2. Connect Snowflake, Databricks, or other data platform integrations.
3. Connect OpenAI or cloud AI providers where runtime evidence is available.
4. Define perspectives and unit metrics for allocation.
5. Review [AI Economics](../cost-management/ai-economics.md), [Data Platform](data-platform.md), and [Unit Economics](../cost-management/unit-economics.md) together.
---
## Start Here
Source: `get-started/index.md`
URL: /get-started/
# Start Here
Start with the smallest path that proves CloudVerse is receiving real data: sign in, connect one provider, verify ingestion, then invite the first users.
## First successful setup
| Step | Outcome | Next guide |
|---|---|---|
| Activate your account | You can access the CloudVerse workspace. | [Sign in](sign-in.md) |
| Connect billing and inventory | CloudVerse can ingest provider cost and resource data. | [Quickstart](quickstart.md) |
| Verify data freshness | Dashboards and explorers show current cost data. | [Connect Data](../integrations/index.md) |
| Map ownership | Spend can be grouped by team, product, environment, or cost center. | [Perspectives](../organization/perspectives.md) |
| Invite users | Finance, engineering, and platform users have the right access. | [Users & Roles](../rbac/index.md) |
## After onboarding
- Use [Cost Explorer](../cost-management/cost-explorer.md) to explain the current bill.
- Use [Recommendations](../optimization/recommendations.md) to identify savings.
- Use [Commitment Optimizer](../optimization/commitment-optimizer.md) to plan committed-use coverage.
- Use [Tag Management](../infrastructure/tag-management.md) to improve allocation quality.
- Use [Reports](../reports/reports.md) to schedule stakeholder updates.
---
## Navigation and access
Source: `get-started/navigation-and-access.md`
URL: /get-started/navigation-and-access/
# Navigation and access
CloudVerse uses permission-aware navigation and an organization switcher. The pages you see depend on your organization, assigned role, access scope, enabled modules, and connected data sources.
## Find a page
Use the product navigation or search to open the area you need. If a page is not visible, it usually means one of the following is true:
- your role does not include the required permission;
- the page is outside your assigned access scope;
- the feature is not enabled for the active organization;
- a required cloud, data, AI, or collaboration integration is not connected yet.
## Account menu
Open the account menu to:
- switch organization;
- open **Profile preferences**;
- sign out.
Changing organization changes the data scope and may change the available menu.
## Why a page may be missing
CloudVerse hides pages when the user lacks the matching navigator or view permission. Pages may also be unavailable because no organization is selected, a product module is disabled, or a required integration is not connected.
Some detail and administration pages are reached from buttons or table rows rather than primary navigation. These include account details, asset details, report viewers, recommendation details, create/edit screens, and access diagnostics.
## Best practices
- Switch to the intended organization before investigating data.
- Save commonly used report or page filters as a **Saved View** when that control is present.
- Ask an administrator for the smallest role and scope needed for your work.
- Treat a direct URL that shows **access is restricted** as a permission issue, not a missing-data issue.
---
## Quickstart
Source: `get-started/quickstart.md`
URL: /get-started/quickstart/
# Quickstart
Connect a cloud billing source, verify that data is flowing, and open your first cost and optimization views. This takes about 15 minutes.
## Before you begin
You need:
- An active CloudVerse AI account. Check your email for an invitation, or ask your admin.
- Access to **Settings > Integrations** (requires the `Tenant Admin` role by default).
- Cloud provider credentials or permissions. See the [Integrations overview](../integrations/index.md) for what each provider requires.
## Step 1 — Connect your first cloud account
1. In product navigation, go to **Settings > Integrations**.
2. Select your cloud provider (AWS, Azure, GCP, or another supported provider).
3. Give the connection a recognizable name — for example, `aws-production` or `azure-dev`.
4. Follow the provider setup flow. Depending on the provider, the flow may include steps for **Authentication**, **Billing Mode**, **Permissions**, **Discovery**, **Billing Setup**, and **Organization**.
5. Complete the flow and wait for initial discovery and billing ingestion.
!!! tip "What to expect after connecting"
CloudVerse begins discovering resources immediately. Billing data typically appears within a few hours, depending on the provider's billing export schedule. Some providers may take up to 24 hours for the first billing data.
See [Integrations](../integrations/index.md) for provider-specific setup guides.
## Step 2 — Verify the connection
1. Go back to **Settings > Integrations** and confirm the account appears in the list.
2. Open the integration detail page and check the status indicators for billing and discovery.
3. Go to **Cost Management > Cost Explorer**, select a date range, and use the **Providers** or **Accounts** filters to find the newly connected source.
4. Go to **Cloud Infrastructure > Resources** and confirm that assets from the new account appear.
5. After 24–48 hours, open **Optimization > Recommendations** to see savings opportunities.
If data is missing or incomplete, see [Missing or delayed data](../troubleshooting/missing-delayed-data.md).
## Step 3 — Configure your workspace
Once data is flowing, complete these recommended setup steps:
| Task | Where |
|---|---|
| Set your organization's display currency | **Organization > Settings** |
| Create Perspectives to map costs to teams | [Perspectives](../organization/perspectives.md) |
| Invite teammates and assign roles | [Users & Roles](../rbac/index.md) |
| Set up budget alerts | [Budgets](../cost-management/budgets.md) |
| Configure anomaly and budget notifications | **Settings > Notification Settings** |
| Connect collaboration tools (Slack, Jira) | [Integrations](../integrations/index.md) |
## What's next?
- [Explore your cost data](../cost-management/cost-explorer.md) — filter, group, and drill into spend.
- [Set a budget](../cost-management/budgets.md) — track spend against targets with alerts.
- [Review savings recommendations](../optimization/recommendations.md) — find rightsizing and cleanup opportunities.
- [Connect more integrations](../integrations/index.md) — add other cloud accounts, Snowflake, Datadog, and more.
---
## Sign in and activate your account
Source: `get-started/sign-in.md`
URL: /get-started/sign-in/
# Sign in and activate your account
Use the CloudVerse identity screens to sign in, activate an invitation, or recover access.
## Sign in
1. Open the CloudVerse login page.
2. Choose the sign-in method available to your organization. The frontend supports standard login and an SSO flow; provider buttons may include Google, Microsoft, GitHub, or Keycloak when configured.
3. Complete your identity-provider prompt.
4. CloudVerse opens the application for your active organization.
Administrators can configure SSO from **Organization > Overview > SSO** when the required permission is available.
## Activate an invitation
1. Open the activation link from your invitation email.
2. Follow the activation page prompts.
3. If required, use **Set Password** to create a password.
4. Sign in after activation completes.
If the activation link has expired, the frontend shows an expired activation page. Ask an administrator to resend the invitation.
## Reset a password
1. Select the forgotten-password option on the login page.
2. Submit the email address associated with your CloudVerse account.
3. Open the reset link sent by CloudVerse.
4. Enter and confirm the new password.
## Access considerations
Signing in does not guarantee access to every module. Product navigation is filtered using view and navigator permissions. Your active organization also determines the data and pages available.
### Troubleshooting
- If login loops or returns to the login screen, clear stale CloudVerse cookies and retry.
- If SSO fails, confirm you are using the organization’s configured identity provider and approved email domain.
- If you receive a restricted-access message, contact an organization administrator.
- See [Login and access issues](../troubleshooting/login-access.md).
---
## Glossary
Source: `glossary.md`
URL: /glossary/
# Glossary
Key terms used throughout CloudVerse AI documentation.
| Term | Meaning |
|---|---|
| **Account** | A connected cloud billing or resource scope — for example, an AWS account, Azure subscription, or GCP project. |
| **AKO** | The CloudVerse AI Kubernetes Optimizer. Provides policy-driven workload right-sizing for Kubernetes clusters. |
| **Allocation** | A rule or result that assigns cloud cost to a specific team, product, cost center, or Perspective owner. |
| **Anomaly** | An unexpected or predicted change in cloud spend, detected by ML or by a custom rule. |
| **Amortized cost** | Upfront commitment costs (Reserved Instances, Savings Plans) spread evenly across the commitment period. |
| **Budget** | A user-defined spend limit for a scope and period, paired with forecast tracking and configurable alerts. |
| **Chargeback** | The practice of billing internal teams or business units for the cloud costs they generate. |
| **Commitment** | A purchase agreement that exchanges usage commitment for a discounted price. Includes Reserved Instances (AWS), Savings Plans (AWS), Azure Reservations, and GCP Committed Use Discounts (CUDs). |
| **Confidence** | A rating that describes how strongly the available usage evidence supports a recommendation. High confidence means more data; low confidence means less data or inconsistent patterns. |
| **Cost type** | The billing dimension being measured — for example, on-demand, blended, amortized, or net cost. |
| **CUR** | Cost and Usage Report — AWS's detailed billing export, required for full CloudVerse AWS integration. |
| **Dynamic Perspective scope** | An access restriction applied to a user that limits their visible cost data to a specific Perspective. |
| **Effective scope** | The final access boundary applied to a user after combining their role permissions and Perspective scope. |
| **Entitlement** | A software license right — for example, a Windows Server license or a database engine license running in the cloud. |
| **External user** | A user whose email domain does not match the organization's registered domain. |
| **Gross cost** | Total charges before credits, discounts, or savings are applied. |
| **Integration** | A configured connection between CloudVerse AI and a cloud provider, data platform, or collaboration tool. |
| **Managed workspace** | A workspace that can own child workspaces, allocate cloud accounts downward, and set billing rules for the workspaces below it. |
| **Markup** | A percentage or flat-fee rate applied by a parent workspace to the cloud cost it passes down to one specific child workspace. |
| **Monthly impact** | The estimated monthly financial effect of a recommendation or optimization action. |
| **Normal workspace** | A leaf workspace that views cost data for its own allocated accounts and cannot create child workspaces or allocate accounts. |
| **Net cost** | Cost after credits, discounts, and savings are applied. |
| **Perspective** | A user-defined business view that maps cloud resources and spend to teams, products, environments, or cost centers. Used for filtering, allocation, budgeting, and scoped access. |
| **Provider** | A cloud, SaaS, data platform, AI, or telemetry vendor connected to CloudVerse AI. |
| **Recommendation** | An evidence-backed opportunity to reduce cost, improve resource utilization, or improve governance. |
| **Region** | A provider geographic location where a resource or service is deployed. |
| **Reserved Instance (RI)** | An AWS commitment that provides a discounted hourly rate in exchange for a 1-year or 3-year usage commitment. |
| **Resource** | A discovered cloud asset — an EC2 instance, RDS database, storage bucket, Kubernetes node, AI model endpoint, or data platform entity. |
| **Risk** | An operational impact rating for a recommendation — how disruptive or reversible the proposed change is. |
| **Savings Plan** | An AWS or Azure commitment that provides discounted pricing in exchange for consistent usage spend over 1 or 3 years. |
| **Service** | A cloud provider product or service family associated with cost or resources — for example, Amazon EC2, Azure SQL Database, or Google Cloud Storage. |
| **Tenant** | A CloudVerse AI organization instance. |
| **Tenant Admin** | The built-in role with full access to all CloudVerse AI features and settings. |
| **Tenant user** | A user whose email domain matches the organization's registered domain. |
| **Unit Economics** | A measurement that correlates cloud cost with a business activity or output — for example, cost per transaction or cost per active user. |
| **Utilization** | The percentage of provisioned or requested capacity that is actually being used by a resource. |
| **Workspace** | A logical grouping of resources and users that defines an access boundary within CloudVerse AI. In tenants using MSP Workspaces, workspaces form a hierarchy where each workspace sees only itself and its own descendants. |
| **Workspace switcher** | A control that moves a root administrator or workspace manager between their direct child workspaces. |
---
## Governance
Source: `governance/index.md`
URL: /governance/
# Governance
CloudVerse governance combines cost allocation, tag hygiene, access control, perspectives, notifications, and organization settings. Use this section to control who can see or change data, how costs are mapped to the business, and how remediation is approved.
## Governance pillars
| Pillar | Guides |
|---|---|
| Tag standards | [Tag Management](../infrastructure/tag-management.md) |
| Business mapping | [Perspectives](../organization/perspectives.md), [Chargeback & Allocation](../cost-management/chargeback-allocation.md) |
| Access control | [Users & Roles](../rbac/index.md), [Access scopes](../rbac/access-scopes.md), [Teams & Workspaces](../rbac/teams-workspaces-business-scopes.md) |
| Organization setup | [Organization Settings](../organization/organization-settings.md), [Notifications](../settings/notifications.md) |
| Audit and validation | [Validate access](../rbac/validating-access.md), [Troubleshooting](../rbac/troubleshooting.md) |
## Recommended rollout
1. Define perspectives for teams, products, environments, and cost centers.
2. Configure tag policies and discovery scans.
3. Establish role templates for finance, engineering, platform, and executives.
4. Add access scopes where users should only see part of the estate.
5. Review chargeback pools and allocation rules.
6. Route governance alerts to Slack, Teams, Jira, or ServiceNow.
## Governance capabilities
CloudVerse governance combines tagging, allocation, access control, organization settings, and audit-friendly operating practices.
| Capability | Outcome |
|---|---|
| Tag policies and remediation | Improve cost ownership and reduce unallocated spend. |
| Perspectives | Map cloud and data-platform spend to teams, products, environments, and cost centers. |
| Chargeback and allocation | Allocate shared costs, credits, savings, and common services to business owners. |
| Roles and access scopes | Limit who can view, export, approve, or change sensitive financial data. |
| Notifications | Route anomalies, budget alerts, recommendations, and workflow events to the right owners. |
Review governance settings after every major provider onboarding, reorganization, or reporting-currency change.
---
## CloudVerse AI Documentation
Source: `index.md`
URL: /
# CloudVerse AI Documentation
CloudVerse AI is a multi-cloud FinOps platform for cost visibility, optimization, commitment planning, governance, and safe automation. Start with a provider connection, then use CloudVerse to explain spend, find savings, allocate costs, and govern actions across engineering, finance, and platform teams.
---
## Choose a path
Start Here
Connect your first provider
Set up a billing source, confirm ingestion, and verify that cost and resource data are visible.
Analyze Spend
Explain your cloud bill
Use Cost Explorer, anomalies, budgets, reports, and bill review to understand what changed.
Optimize
Prioritize savings actions
Review rightsizing, cleanup, Spot, license, SKU, and ML-backed recommendations.
Commitments
Plan committed-use coverage
Model Reserved Instances, Savings Plans, Azure commitments, and GCP CUDs before execution.
Data & AI
Track warehouse and AI economics
Analyze Snowflake, Databricks, BigQuery, GPU, model, token, and allocation-basis costs.
Automation
Govern and execute changes
Use Agentic FinOps, approval workflows, dry runs, scheduling, audit, and rollback controls.
Infrastructure
Map assets and workloads
Inspect cloud resources, Kubernetes, architecture intelligence, and resource dependency signals.
Governance
Control access and allocation
Manage tags, perspectives, RBAC, teams, workspaces, chargeback, and organization settings.
---
## Start by role
=== "Finance & FinOps"
1. [Connect billing integrations](integrations/index.md).
2. [Explore spend](cost-management/cost-explorer.md) by provider, service, account, region, tag, or perspective.
3. [Create budgets](cost-management/budgets.md) and monitor anomalies.
4. [Configure allocation](cost-management/chargeback-allocation.md) and [unit economics](cost-management/unit-economics.md).
5. [Schedule reports](reports/reports.md) and review month-end changes.
=== "Engineering"
1. [Review resource inventory](infrastructure/resources.md).
2. [Investigate Kubernetes costs](infrastructure/kubernetes.md).
3. [Act on recommendations](optimization/recommendations.md).
4. [Use Spot Optimizer](optimization/spot-optimizer.md) and [SKU & Region Optimizer](optimization/sku-optimizer.md).
5. [Route changes through workflows](automation/workflows.md).
=== "Platform & Cloud Admin"
1. [Set up integrations](integrations/index.md).
2. [Manage users and roles](rbac/index.md).
3. [Define perspectives](organization/perspectives.md) and access scopes.
4. [Govern tags](infrastructure/tag-management.md) and remediation campaigns.
5. [Review troubleshooting guidance](troubleshooting/index.md) for access, ingestion, and integration issues.
=== "Data & AI Teams"
1. [Connect Snowflake, Databricks, and OpenAI](integrations/index.md).
2. [Review AI Economics](cost-management/ai-economics.md).
3. [Analyze warehouse cost drivers](data-platform/data-platform.md).
4. [Use Data Optimization](automation/data-optimization.md) to identify query, storage, and capacity actions.
---
## Product Areas
| Area | Start here |
|---|---|
| Connect data | [Integrations](integrations/index.md) |
| Analyze spend | [Cost Explorer](cost-management/cost-explorer.md), [Anomalies](cost-management/anomalies.md), [Reports](reports/reports.md) |
| Optimize | [Recommendations](optimization/recommendations.md), [Spot Optimizer](optimization/spot-optimizer.md) |
| Plan commitments | [Commitment Optimizer](optimization/commitment-optimizer.md) |
| Understand data and AI economics | [AI Economics](cost-management/ai-economics.md), [Data Platform](data-platform/data-platform.md) |
| Govern automation | [Agentic FinOps](automation/agentic-finops.md), [Workflows](automation/workflows.md) |
| Manage governance | [Tag Management](infrastructure/tag-management.md), [Users and roles](rbac/index.md), [Chargeback](cost-management/chargeback-allocation.md) |
---
## Reference
CloudVerse docs include human-readable guides and machine-readable indexes:
- [Glossary](glossary.md) defines common product and FinOps terms.
- [Troubleshooting](troubleshooting/index.md) covers access, missing data, delayed ingestion, recommendation gaps, filters, exports, and integrations.
- [`/llms.txt`](llms.txt) and [`/llms-full.txt`](llms-full.txt) are generated during the GitHub Pages build for AI agents and RAG systems.
---
## Infrastructure
Source: `infrastructure/index.md`
URL: /infrastructure/
# Infrastructure
CloudVerse infrastructure views connect resources, workloads, Kubernetes, architecture, cost, utilization, and ownership. Use this section when you need to understand what exists, how it relates, and what can safely change.
Inventory
Resource Inventory
Browse assets with cost, utilization, tags, provider metadata, and owner context.
Kubernetes
Kubernetes and AKO
Analyze clusters, namespaces, workloads, cost allocation, policies, and recommendations.
Relationships
Resource Intelligence
Inspect findings, dependencies, risk signals, and supporting drawer evidence.
Architecture
Architecture Intelligence
Model applications and workloads, review evidence, and assess architecture recommendations.
## Common workflows
| Goal | Path |
|---|---|
| Find untagged assets | [Tag Management](tag-management.md) -> discovery summary -> remediation plan. |
| Investigate a resource | [Resource Inventory](resources.md) -> asset detail -> cost and utilization history. |
| Review Kubernetes cost | [Kubernetes and AKO](kubernetes.md) -> cluster or workload detail -> recommendations. |
| Check architectural risk | [Architecture Intelligence](../architecture/applications.md) -> application/workload evidence -> recommendation bundle. |
## Data requirements
Infrastructure views are strongest when provider inventory, tags, billing exports, and telemetry are all connected. Missing inventory or telemetry can reduce recommendation confidence.
---
## Kubernetes
Source: `infrastructure/kubernetes.md`
URL: /infrastructure/kubernetes/
# Kubernetes
**Kubernetes Inventory** gives you cost and efficiency analysis for your Kubernetes clusters — broken down by namespace, workload, node, pod, and persistent storage — with the option to automate workload right-sizing using the AKO optimizer.
## When to use it
- You want to understand what Kubernetes workloads are costing and why.
- You need to identify over-provisioned namespaces or underutilized nodes.
- You want to right-size workload resource requests using automated policy.
## Open Kubernetes
Go to **Cloud Infrastructure > Kubernetes** from product navigation.
## Review cluster efficiency
1. Filter by provider, account, and cluster.
2. Select a date range.
3. Review cluster-level cost and resource summaries.
4. Compare **Utilized**, **Requested**, and **Provisioned** CPU and memory:
- A large gap between **Provisioned** and **Utilized** indicates over-provisioning.
- A gap between **Requested** and **Utilized** indicates workloads requesting more than they use.
5. Check node cost by pricing model: **On-Demand**, **Spot**, and **Reserved**.
6. Drill into namespaces, workloads, nodes, pods, and persistent volumes.
7. Click the utilization or cost trend to open a time-based investigation modal.
## Inventory views
| View | What it shows |
|---|---|
| Clusters | All connected clusters with cost and efficiency summary |
| Nodes | Node-level cost, instance type, and utilization |
| Pods | Pod-level resource usage and cost allocation |
| Persistent Volumes | Storage volume cost and utilization |
## AKO — Kubernetes Optimizer
**AKO** (the Kubernetes Optimizer) is available if enabled for your tenant. It provides policy-driven workload right-sizing with human approval and automation controls.
### Use AKO
1. Open the AKO view from the Kubernetes area.
2. Filter by cluster, environment, namespace, provider, or review status.
3. Use the workload state views:
- **All workloads** — complete inventory
- **Managed by policy** — workloads under an active AKO policy
- **Awaiting review** — changes ready for human approval
- **Blocked** — workloads that cannot be optimized due to policy conflicts or missing data
- **Low confidence** — insufficient history to make a reliable recommendation
4. Select a workload and review the proposed CPU and memory request change.
5. Approve the change when ready.
### AKO policy settings
For each policy you can configure: target namespace, environment, confidence threshold, automation mode (recommend-only or auto-apply with approval), and review cadence.
## Best practices
- Investigate clusters where **Provisioned** is significantly higher than **Utilized** — this is typically the biggest Kubernetes cost opportunity.
- Run AKO in recommend-only mode for at least two weeks before enabling auto-apply.
- Separate production and non-production policies — non-prod can tolerate more aggressive right-sizing.
- Review blocked and low-confidence workloads periodically as more data accumulates.
## Troubleshooting
AKO requires connected clusters. If the AKO workload table is empty, verify that the Kubernetes integration is connected and clusters are being discovered. See [Missing or delayed data](../troubleshooting/missing-delayed-data.md).
---
## Resource Intelligence
Source: `infrastructure/resource-intelligence.md`
URL: /infrastructure/resource-intelligence/
# Resource Intelligence
**Resource Intelligence** combines tenant inventory, actual cost, telemetry, licenses, commitments, and policy evidence to identify contextual fit recommendations.
## When to use it
Use Resource Intelligence when a generic cost recommendation is not enough and you need to understand whether a resource should be evaluated, monitored, or avoided for a particular change.
## Open Resource Intelligence
Go to **Cloud Infrastructure > Resource Intelligence**.
## Review a resource signal
1. Confirm the active organization and data scope.
2. Filter the resource set using the controls on the page.
3. Review cost, telemetry, license, commitment, and policy evidence.
4. Open the relevant recommendation or resource detail.
5. Check the stated fit, missing evidence, and risk before planning action.
6. Cross-check the resource in **Resources** and the recommendation in **Optimization > Recommendations**.
## Best practices
- Treat missing telemetry or ownership as a reason to investigate, not as evidence of waste.
- Check commitment and license effects before changing size, provider, or region.
- Use business scope and environment information to distinguish production from non-production.
- Preserve the evidence used for an approval decision.
This page uses recommendations access in the frontend. It may not appear for users with asset-only permissions.
---
## Resource Inventory
Source: `infrastructure/resources.md`
URL: /infrastructure/resources/
# Resource Inventory
**Cloud Resource Inventory** gives you a searchable, filterable view of every cloud asset across your connected accounts — with cost, utilization, tags, and optimization signals attached.
## When to use it
- You want to see what's running in the cloud and who owns it.
- You're investigating a cost spike and need to find the specific resource responsible.
- You want to audit tag coverage or find untagged resources.
- You're verifying that a newly connected account has been discovered.
## Open Resource Inventory
Go to **Cloud Infrastructure > Resources** from product navigation.
## Use the Assets List
1. Apply filters: provider, account, region, service category, or tag.
2. Review columns: **Name**, **Account**, **Provider**, **Region**, **Availability Zone**, **Category**, **Tags**, **Status**, and **Created On**.
3. Select any resource to open its **Asset detail** page.
## Asset detail
The detail page shows:
- **Configuration** — instance type, size, storage, networking
- **Cost** — spend trend for the resource
- **Utilization** — CPU, memory, network, and storage I/O metrics (when telemetry is available)
- **Tags** — all tags applied to the resource
- **Relationships** — connected resources (depends on service type)
- **Recommendations** — any active optimization signals for this resource
Use **Edit Tag** to update tags directly from CloudVerse (requires tag management permission).
## Overview cards
The **Overview** tab highlights:
- **Newly Added Assets** — resources discovered recently
- **Non-Production** — resources flagged as non-prod (by tag or Perspective rule)
- **Untagged** — resources missing required tags
Review untagged and newly added resources regularly to maintain cost attribution accuracy.
## Export
Use the export action to download inventory as a CSV or Excel file. Specify the scope and asset type before exporting.
## Best practices
- Investigate untagged and newly added resources at least weekly.
- Use provider IDs alongside names when two resources have similar display names.
- Compare provisioned, requested, and utilized metrics before making rightsizing decisions.
- Validate resource status in the cloud provider console before taking destructive action.
## Troubleshooting
If resources are missing after connecting an account, check the integration discovery status. See [Missing or delayed data](../troubleshooting/missing-delayed-data.md).
---
## Tag Management
Source: `infrastructure/tag-management.md`
URL: /infrastructure/tag-management/
# Tag Management
**Tag Management** governs tag coverage, discovered keys, value standards, normalization, policy, and remediation.
## Open Tag Management
Go to **Cloud Infrastructure > Tag Management**.
The page can include:
| Tab | Purpose |
| ----------------------- | ------------------------------------------------------- |
| **Tag Inventory** | Review discovered tag keys, values, and coverage. |
| **Tag Standards** | Define the intended tag dictionary and accepted values. |
| **Normalization Rules** | Map inconsistent keys or values to a standard. |
| **Policies** | Define required or governed tagging behavior. |
| **Tag Guard** | Evaluate or enforce tagging controls when enabled. |
| **Fix Plans** | Review remediation work for non-compliant resources. |
## Improve tag quality
1. Start with **Tag Inventory** and identify high-spend untagged or inconsistent resources.
2. Define canonical keys and values in **Tag Standards**.
3. Add **Normalization Rules** for known variants.
4. Create or update **Policies** for required tags.
5. Review **Tag Guard** findings before enforcement.
6. Use **Fix Plans** to coordinate remediation.
## Best practices
- Standardize a small set of business-critical tags first.
- Avoid normalization rules that merge genuinely different meanings.
- Test policies on non-production scopes before enforcement.
- Coordinate fixes with resource owners; tags can affect allocation, access, budgets, and reports.
Tag Guard OAuth callbacks and some remediation actions are only available when the relevant integration is enabled.
---
## Alibaba Cloud
Source: `integrations/alibaba.md`
URL: /integrations/alibaba/
# Alibaba Cloud
Connect Alibaba Cloud to bring billing and resource inventory data into CloudVerse AI.
## What you get
- Billing data from Alibaba Cloud billing exports
- Resource inventory across regions and services
- Cost analysis and anomaly detection per account
## Prerequisites
- Alibaba Cloud account with billing access
- Access Key ID and Secret with the required permissions
## Connect Alibaba Cloud
1. Go to **Settings > Integrations**.
2. Select **Alibaba Cloud**.
3. Enter a connection name — for example, `alibaba-production`.
4. Enter your **Access Key ID** and **Access Key Secret**.
5. Choose the billing and discovery scope.
6. Finish the flow and wait for initial data ingestion.
## Permissions required
The access key must have read access to billing, resource, and cost management APIs. Use a RAM user with least-privilege policies scoped to billing and resource read operations.
## Validate data
| Check | Expected result |
|---|---|
| Integration status | Authentication and discovery are active. |
| Billing coverage | The selected billing scope appears in Cost Explorer. |
| Resource coverage | Expected regions and services appear in Resource Inventory. |
| Filters | Provider, account, region, and service filters include Alibaba Cloud values. |
## Best practices
- Use a dedicated RAM user rather than the root account access key.
- Rotate access keys on schedule and update them in CloudVerse promptly.
- Document the billing scope and RAM policy used for the connection.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## Amazon Web Services (AWS)
Source: `integrations/aws.md`
URL: /integrations/aws/
# Amazon Web Services (AWS)
Connect one or more AWS accounts or an AWS Organization to bring billing, resource inventory, and commitment data into CloudVerse AI.
## What you get
- Billing data from AWS Cost and Usage Report (CUR)
- Full resource inventory across regions and services
- Reserved Instance and Savings Plan coverage and recommendations
- Anomaly detection and budget tracking per account or organization
## Prerequisites
- AWS account with administrator access (or delegated billing access)
- An S3 bucket for CUR export, or permission to create one
- IAM role that CloudVerse can assume for read access
## Connect AWS
1. Go to **Settings > Integrations**.
2. Select **Amazon Web Services**.
3. Enter a connection name — for example, `aws-production`.
4. Choose your authentication method:
- **Token** — provide an Access Key ID and Secret Access Key.
- **CLI Console** — follow the in-app guided flow to set up an IAM role via AWS Console.
5. Complete the **Billing Setup** step: configure or confirm your CUR export to S3.
6. Choose the **Discovery** scope — individual account or full AWS Organization.
7. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Go to **Settings > Integrations** and open the AWS connection detail page.
2. Confirm that billing and discovery status indicators are green.
3. Open **Cost Management > Cost Explorer**, filter by **Provider: AWS**, and check that data appears.
4. Open **Cloud Infrastructure > Resources** and filter by your AWS account to verify inventory.
## Permissions required
CloudVerse requires an IAM role with the following minimum permissions:
- `ce:GetCostAndUsage` and related Cost Explorer read permissions
- `s3:GetObject` and `s3:ListBucket` on the CUR export bucket
- `ec2:Describe*`, `rds:Describe*`, and service-specific read permissions for inventory discovery
For the full recommended policy, refer to the in-app IAM policy template provided during setup.
## Connect multiple AWS accounts
To connect additional accounts:
- Repeat the setup flow for each account, or
- Connect at the AWS Organization level during initial setup to pull all member accounts automatically.
## Best practices
- Use the CLI Console flow to create a least-privilege IAM role rather than long-lived access keys.
- Enable CUR at the management account level if using AWS Organizations.
- Include resource IDs and tags in your CUR export for accurate inventory mapping.
- Rotate access keys on schedule and update credentials in CloudVerse immediately after.
## Troubleshooting
- **No billing data after 24 hours** — Check that the CUR export is configured in AWS and that the S3 bucket has the correct permissions.
- **Missing resources** — Verify that the IAM role has the required `Describe*` permissions for the services you expect to see.
- **Status shows error** — Open the integration detail page; the error message identifies the failing step.
See [Integration setup issues](../troubleshooting/integrations.md) for more help.
---
## Microsoft Azure
Source: `integrations/azure.md`
URL: /integrations/azure/
# Microsoft Azure
Connect one or more Azure subscriptions or an Enrollment Account to bring billing, resource inventory, and commitment data into CloudVerse AI.
## What you get
- Billing data from Azure Cost Management exports
- Resource inventory across subscriptions, resource groups, and regions
- Azure Reservations and Savings Plans coverage and recommendations
- Anomaly detection and budget tracking per subscription
## Prerequisites
- Azure account with Owner or Contributor access on the subscription, or billing account access for EA/MCA
- Permission to register an Azure AD application (for service principal authentication)
## Connect Azure
1. Go to **Settings > Integrations**.
2. Select **Microsoft Azure**.
3. Enter a connection name — for example, `azure-production`.
4. Complete the **Authentication** step using a Service Principal (App Registration):
- Register an application in Azure AD.
- Assign the `Cost Management Reader` role at the subscription or billing account scope.
- Enter the **Tenant ID**, **Client ID**, and **Client Secret** in CloudVerse.
5. Select the subscriptions or enrollment account to include in discovery.
6. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the Azure connection detail page in **Settings > Integrations**.
2. Confirm that billing and discovery status indicators are green.
3. Open **Cost Management > Cost Explorer**, filter by **Provider: Azure**, and confirm data is present.
4. Open **Cloud Infrastructure > Resources** and filter by your Azure subscription to verify inventory.
## Permissions required
The Azure AD application needs:
- `Cost Management Reader` at the subscription or billing account scope (for billing data)
- `Reader` at the subscription scope (for resource inventory)
For EA accounts, also assign `EnrollmentReader` at the enrollment account.
## Best practices
- Use a dedicated service principal for CloudVerse with only the required permissions.
- Set the client secret to a long expiry and update it in CloudVerse before it expires.
- Connect at the Enrollment Account or Management Group level to pull all subscriptions automatically.
## Troubleshooting
- **No billing data** — Ensure `Cost Management Reader` is assigned at the correct scope and that cost exports are enabled.
- **Missing resources** — Verify the service principal has `Reader` on all target subscriptions.
- **Authentication failure** — Check that the Tenant ID, Client ID, and Client Secret are correct and the secret has not expired.
See [Integration setup issues](../troubleshooting/integrations.md) for more help.
---
## Databricks
Source: `integrations/databricks.md`
URL: /integrations/databricks/
# Databricks
Connect Databricks to track cluster compute costs, job spend, and optimization opportunities in CloudVerse AI.
## What you get
- Cluster and job cost tracking
- Pipeline and workload cost analysis
- Optimization recommendations for idle or oversized clusters
## Prerequisites
- Databricks workspace with admin access
- A personal access token or service principal credentials
## Connect Databricks
1. Go to **Settings > Integrations**.
2. Select **Databricks**.
3. Enter a connection name — for example, `databricks-production`.
4. Enter your Databricks **Workspace URL** and **Access Token**.
5. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the Databricks connection detail page in **Settings > Integrations**.
2. Open **Data & AI Platform > Data Platform** and select Databricks to verify cluster and job data.
## Data expected
| Data | Used for |
|---|---|
| Workspace and cluster metadata | Inventory, ownership, and cost attribution. |
| Job and pipeline activity | Workload-level cost analysis and optimization. |
| Query or warehouse facts, when configured | Data Platform query, table, and warehouse insights. |
| Cost and usage data | Spend trend, allocation, and optimization calculations. |
## Best practices
- Use a service principal token rather than a personal access token for production connections.
- Rotate the token on schedule and update it in CloudVerse promptly.
- Confirm workspace IDs and billing export configuration during acceptance.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## Datadog
Source: `integrations/datadog.md`
URL: /integrations/datadog/
# Datadog
Connect Datadog to bring usage metrics and telemetry into CloudVerse AI, enriching cost analysis and optimization signals.
## What you get
- Datadog usage and cost data
- Telemetry signals that improve rightsizing confidence
- Correlation between infrastructure metrics and cloud spend
## Prerequisites
- Datadog account with API access
- A Datadog API key and Application key
## Connect Datadog
1. Go to **Settings > Integrations**.
2. Select **Datadog**.
3. Enter a connection name.
4. Enter your Datadog **API Key** and **Application Key**.
5. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the Datadog connection detail page in **Settings > Integrations**.
2. Confirm the status indicators are green.
3. Open **Optimization > Recommendations** — rightsizing recommendations for resources with Datadog metrics will show enriched confidence.
## Data expected
| Data | Used for |
|---|---|
| Host and service telemetry | Rightsizing confidence and utilization context. |
| Usage and cost data | Datadog spend visibility and trend analysis. |
| Tags and service metadata | Ownership and environment filtering. |
## Best practices
- Use a dedicated Datadog application key scoped to read-only metric access.
- Select the Datadog site that matches your account, such as US, EU, AP, or Gov where available.
- Rotate API and application keys together.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## DigitalOcean
Source: `integrations/digitalocean.md`
URL: /integrations/digitalocean/
# DigitalOcean
Connect DigitalOcean to bring billing and resource inventory data into CloudVerse AI.
## What you get
- Billing data from DigitalOcean billing exports
- Resource inventory across regions and services
- Cost analysis and anomaly detection
## Prerequisites
- DigitalOcean account with billing access
- API credentials or authentication tokens with the required permissions
## Connect DigitalOcean
1. Go to **Settings > Integrations**.
2. Select **DigitalOcean**.
3. Enter a connection name.
4. Complete the authentication step using your DigitalOcean API credentials.
5. Choose the billing and discovery scope.
6. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the DigitalOcean connection detail page in **Settings > Integrations**.
2. Confirm that billing and discovery status indicators are green.
3. Open **Cost Management > Cost Explorer** and filter by **Provider: DigitalOcean** to confirm data appears.
## Data expected
| Data | Used for |
|---|---|
| Billing export or usage rows | Spend analysis and budget tracking. |
| Droplet, volume, network, and managed-service inventory | Resource Inventory and optimization context. |
| Region and project metadata | Filtering and ownership review. |
## Best practices
- Use read-only, least-privilege credentials.
- Rotate credentials on schedule and update them in CloudVerse promptly.
- Keep the selected scope aligned with how finance reviews DigitalOcean projects.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## Google Cloud (GCP)
Source: `integrations/gcp.md`
URL: /integrations/gcp/
# Google Cloud (GCP)
Connect one or more GCP projects or a GCP Organization to bring billing, resource inventory, and commitment data into CloudVerse AI.
## What you get
- Billing data from GCP BigQuery billing export
- Resource inventory across projects, regions, and services
- Committed Use Discount (CUD) coverage and recommendations
- Anomaly detection and budget tracking per project or organization
## Prerequisites
- GCP project with billing enabled
- BigQuery billing export configured (standard or detailed)
- Service account with the required IAM roles
## Connect GCP
1. Go to **Settings > Integrations**.
2. Select **Google Cloud**.
3. Enter a connection name — for example, `gcp-production`.
4. Complete the **Billing Setup** step:
- Confirm your BigQuery billing export dataset and project.
- Enter the billing account ID.
5. Complete the **Authentication** step:
- Create a GCP service account.
- Grant the required IAM roles.
- Download and upload the service account JSON key.
6. Select the projects or organization scope to include in discovery.
7. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the GCP connection detail page in **Settings > Integrations**.
2. Confirm that billing and discovery status indicators are green.
3. Open **Cost Management > Cost Explorer**, filter by **Provider: GCP**, and confirm data appears.
4. Open **Cloud Infrastructure > Resources** and filter by your GCP project to verify inventory.
## Permissions required
The GCP service account needs:
- `roles/bigquery.dataViewer` on the BigQuery billing export dataset
- `roles/bigquery.jobUser` on the project running the BigQuery jobs
- `roles/viewer` at the project or organization scope (for resource inventory)
- `roles/billing.viewer` at the billing account scope
## Best practices
- Enable detailed billing export in BigQuery for full resource-level cost data.
- Connect at the organization level to pull all projects automatically.
- Rotate service account keys on schedule and update them in CloudVerse immediately after.
## Troubleshooting
- **No billing data** — Check that BigQuery export is enabled and that the service account has `bigquery.dataViewer` on the correct dataset.
- **Missing projects** — Verify the service account has `viewer` at the organization or folder level.
- **Authentication failure** — Ensure the service account JSON key is valid and not expired.
See [Integration setup issues](../troubleshooting/integrations.md) for more help.
---
## Huawei Cloud
Source: `integrations/huawei.md`
URL: /integrations/huawei/
# Huawei Cloud
Connect Huawei Cloud to bring billing and resource inventory data into CloudVerse AI.
## What you get
- Billing data from Huawei Cloud billing exports
- Resource inventory across regions and services
- Cost analysis and anomaly detection
## Prerequisites
- Huawei Cloud account with billing access
- API credentials or authentication tokens with the required permissions
## Connect Huawei Cloud
1. Go to **Settings > Integrations**.
2. Select **Huawei Cloud**.
3. Enter a connection name.
4. Complete the authentication step using your Huawei Cloud API credentials.
5. Choose the billing and discovery scope.
6. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the Huawei Cloud connection detail page in **Settings > Integrations**.
2. Confirm that billing and discovery status indicators are green.
3. Open **Cost Management > Cost Explorer** and filter by **Provider: Huawei Cloud** to confirm data appears.
## Data expected
| Data | Used for |
|---|---|
| Billing and cost rows | Cost Explorer, dashboards, and anomaly checks. |
| Project and region inventory | Resource Inventory and filtering. |
| Account identity | Validation that the intended Huawei account is connected. |
## Best practices
- Use read-only, least-privilege credentials.
- Rotate credentials on schedule and update them in CloudVerse promptly.
- Record whether the connection uses the international, China, or Europe endpoint.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## Connect Data
Source: `integrations/index.md`
URL: /integrations/
# Connect Data
CloudVerse becomes useful when billing, inventory, telemetry, and workflow systems are connected. Start with one cloud provider, then add data platforms, AI sources, observability, and collaboration tools.
Cloud
AWS
Connect CUR, accounts, inventory, recommendations, and AWS commitment data.
Cloud
Azure
Connect billing exports, subscriptions, resource inventory, and reservations.
Cloud
Google Cloud
Connect billing export, projects, resources, and committed-use discounts.
Data
Snowflake
Ingest warehouse, query, storage, and usage facts for data cost optimization.
Data
Databricks
Analyze workspace, cluster, pipeline, and query cost drivers.
AI
OpenAI
Bring token and model usage into AI Economics where available.
## Integration categories
| Category | What it adds | Guides |
|---|---|---|
| Cloud providers | Billing, inventory, commitments, resource metadata | [AWS](aws.md), [Azure](azure.md), [GCP](gcp.md), [Alibaba](alibaba.md), [Oracle](oracle.md), [DigitalOcean](digitalocean.md), [Huawei](huawei.md), [Tencent](tencent.md) |
| Data platforms | Warehouse, query, pipeline, storage, and capacity facts | [Snowflake](snowflake.md), [Databricks](databricks.md) |
| Observability | Utilization and telemetry signals | [Datadog](datadog.md) |
| AI platforms | Token, model, and provider usage signals | [OpenAI](openai.md) |
| Collaboration | Alert routing, ticketing, approval, and ITSM workflows | [Slack](slack.md), [Teams](teams.md), [Jira](jira.md), [ServiceNow](servicenow.md) |
## Setup pattern
1. Open **Settings > Integrations**.
2. Select the provider or platform.
3. Choose the authentication method and complete provider-side setup.
4. Start discovery or ingestion.
5. Verify status, last sync time, and any permission warnings.
6. Open the related product area, such as [Cost Explorer](../cost-management/cost-explorer.md), [Data Platform](../data-platform/data-platform.md), or [AI Economics](../cost-management/ai-economics.md).
## Verification checklist
- Billing data appears for the expected date range.
- Resource inventory is present for the expected accounts, subscriptions, or projects.
- Tags and labels are visible for allocation workflows.
- Usage telemetry is connected for recommendations that require it.
- Notification or ticketing tools can receive a test message.
See [Integration setup issues](../troubleshooting/integrations.md) if a connection shows errors or data does not appear after setup.
---
## Jira
Source: `integrations/jira.md`
URL: /integrations/jira/
# Jira
Connect Jira to route CloudVerse AI alerts and actions to your team's existing workflow.
## What you get
Create and track Jira tickets directly from CloudVerse recommendations and workflow approvals.
## Prerequisites
- Jira workspace or instance with admin access to authorize the CloudVerse integration
## Connect Jira
1. Go to **Settings > Integrations**.
2. Select **Jira**.
3. Click **Authorize** or **Connect** to begin the OAuth or callback flow.
4. Follow the Jira authorization prompts.
5. Return to CloudVerse and verify that the integration card shows an active connection.
## Configure notifications
After connecting, go to **Settings > Notification Settings** to choose which alerts to route to Jira and configure recipients or channels.
## Best practices
- Use a dedicated integration user or bot account rather than a personal account.
- Review which alerts are routed and to which channels — avoid routing all alerts to a high-traffic channel.
## Troubleshooting
- **Authorization fails** — Ensure your Jira account has permission to install apps or integrations.
- **Alerts not arriving** — Check that the notification is configured in **Settings > Notification Settings** with the correct destination.
See [Integration setup issues](../troubleshooting/integrations.md) for more help.
---
## OpenAI
Source: `integrations/openai.md`
URL: /integrations/openai/
# OpenAI
Connect the OpenAI API to track token usage and spend in CloudVerse AI alongside your cloud AI workloads.
## What you get
- Token-level usage data (prompt tokens, completion tokens, total tokens)
- Cost per million tokens by model
- Spend trends by model, organization, and project
- Unified view alongside AWS Bedrock, Azure OpenAI, and GCP Vertex AI in [AI Economics](../cost-management/ai-economics.md)
## Prerequisites
- OpenAI account with an active API key
- Optional: Organization ID if your account belongs to multiple organizations
## Connect OpenAI
1. Go to **Settings > Integrations**.
2. Select **OpenAI**.
3. Enter a connection name.
4. Enter your OpenAI **API Key**.
5. Optionally enter your **Organization ID**.
6. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the OpenAI connection detail page in **Settings > Integrations**.
2. Open **Cost Management > AI Economics** and filter by **AI Provider: OpenAI** to confirm token and spend data appears.
## Data expected
| Data | Used for |
|---|---|
| Model usage | Token trends and model-level cost analysis. |
| Prompt, completion, and total tokens | Cost-per-output and unit economics calculations. |
| Organization or project context, when available | Filtering and ownership review. |
## Best practices
- Use a read-only API key scoped to usage data access where possible.
- Rotate the API key on schedule and update it in CloudVerse promptly.
- Do not paste API keys into tickets, chat messages, screenshots, or documentation.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## Oracle Cloud
Source: `integrations/oracle.md`
URL: /integrations/oracle/
# Oracle Cloud
Connect Oracle Cloud to bring billing and resource inventory data into CloudVerse AI.
## What you get
- Billing data from Oracle Cloud billing exports
- Resource inventory across regions and services
- Cost analysis and anomaly detection
## Prerequisites
- Oracle Cloud account with billing access
- API credentials or authentication tokens with the required permissions
## Connect Oracle Cloud
1. Go to **Settings > Integrations**.
2. Select **Oracle Cloud**.
3. Enter a connection name.
4. Complete the authentication step using your Oracle Cloud API credentials.
5. Choose the billing and discovery scope.
6. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the Oracle Cloud connection detail page in **Settings > Integrations**.
2. Confirm that billing and discovery status indicators are green.
3. Open **Cost Management > Cost Explorer** and filter by **Provider: Oracle Cloud** to confirm data appears.
## Data expected
| Data | Used for |
|---|---|
| Tenancy and compartment inventory | Scope validation and Resource Inventory. |
| Billing and usage rows | Cost Explorer, budgets, and reporting. |
| Region and service metadata | Filters, anomaly review, and optimization context. |
## Best practices
- Use read-only, least-privilege credentials.
- Rotate credentials on schedule and update them in CloudVerse promptly.
- Confirm the tenancy and compartments selected match the finance reporting boundary.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## ServiceNow
Source: `integrations/servicenow.md`
URL: /integrations/servicenow/
# ServiceNow
Connect ServiceNow to route CloudVerse AI alerts and actions to your team's existing workflow.
## What you get
Route CloudVerse optimization actions and approvals through ServiceNow ITSM workflows.
## Prerequisites
- ServiceNow workspace or instance with admin access to authorize the CloudVerse integration
## Connect ServiceNow
1. Go to **Settings > Integrations**.
2. Select **ServiceNow**.
3. Click **Authorize** or **Connect** to begin the OAuth or callback flow.
4. Follow the ServiceNow authorization prompts.
5. Return to CloudVerse and verify that the integration card shows an active connection.
## Configure notifications
After connecting, go to **Settings > Notification Settings** to choose which alerts to route to ServiceNow and configure recipients or channels.
## Best practices
- Use a dedicated integration user or bot account rather than a personal account.
- Review which alerts are routed and to which channels — avoid routing all alerts to a high-traffic channel.
## Troubleshooting
- **Authorization fails** — Ensure your ServiceNow account has permission to install apps or integrations.
- **Alerts not arriving** — Check that the notification is configured in **Settings > Notification Settings** with the correct destination.
See [Integration setup issues](../troubleshooting/integrations.md) for more help.
---
## Slack
Source: `integrations/slack.md`
URL: /integrations/slack/
# Slack
Connect Slack to route CloudVerse AI alerts and actions to your team's existing workflow.
## What you get
Receive cost alerts, anomaly notifications, and recommendation digests in Slack channels.
## Prerequisites
- Slack workspace or instance with admin access to authorize the CloudVerse integration
## Connect Slack
1. Go to **Settings > Integrations**.
2. Select **Slack**.
3. Click **Authorize** or **Connect** to begin the OAuth or callback flow.
4. Follow the Slack authorization prompts.
5. Return to CloudVerse and verify that the integration card shows an active connection.
## Configure notifications
After connecting, go to **Settings > Notification Settings** to choose which alerts to route to Slack and configure recipients or channels.
## Best practices
- Use a dedicated integration user or bot account rather than a personal account.
- Review which alerts are routed and to which channels — avoid routing all alerts to a high-traffic channel.
## Troubleshooting
- **Authorization fails** — Ensure your Slack account has permission to install apps or integrations.
- **Alerts not arriving** — Check that the notification is configured in **Settings > Notification Settings** with the correct destination.
See [Integration setup issues](../troubleshooting/integrations.md) for more help.
---
## Snowflake
Source: `integrations/snowflake.md`
URL: /integrations/snowflake/
# Snowflake
Connect Snowflake to track warehouse compute costs, query spend, and optimization opportunities in CloudVerse AI.
## What you get
- Warehouse and cluster cost and utilization
- Query-level cost analysis (expensive, frequent, inefficient queries)
- Pipeline and job cost tracking
- Storage and dataset cost monitoring
- Optimization recommendations for idle warehouses and inefficient queries
## Prerequisites
- Snowflake account with `ACCOUNTADMIN` or billing read access
- A dedicated service user with `SNOWFLAKE` database read permissions
## Connect Snowflake
1. Go to **Settings > Integrations**.
2. Select **Snowflake**.
3. Enter a connection name — for example, `snowflake-production`.
4. Enter your Snowflake **Account Identifier**, **Username**, and **Password** (or key-pair credentials).
5. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the Snowflake connection detail page in **Settings > Integrations**.
2. Confirm the status indicators are green.
3. Open **Data & AI Platform > Data Platform** and select Snowflake to verify warehouse and query data.
## Data expected
| Data | Used for |
|---|---|
| Warehouse compute usage | Warehouse spend, idle analysis, and optimization. |
| Query history | Expensive, frequent, inefficient, and high-scan query review. |
| Table and storage facts | Dataset growth, storage cost, and table-level cost drivers. |
| Account usage metadata | Ownership, filtering, and allocation context. |
## Best practices
- Create a dedicated read-only service user for CloudVerse rather than using an admin account.
- Grant access to `SNOWFLAKE.ACCOUNT_USAGE` views for full cost and usage visibility.
- Rotate credentials on schedule and revalidate Data Platform coverage after rotation.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## Microsoft Teams
Source: `integrations/teams.md`
URL: /integrations/teams/
# Microsoft Teams
Connect Microsoft Teams to route CloudVerse AI alerts and actions to your team's existing workflow.
## What you get
Receive cost alerts, anomaly notifications, and recommendation digests in Teams channels.
## Prerequisites
- Microsoft Teams workspace or instance with admin access to authorize the CloudVerse integration
## Connect Microsoft Teams
1. Go to **Settings > Integrations**.
2. Select **Microsoft Teams**.
3. Click **Authorize** or **Connect** to begin the OAuth or callback flow.
4. Follow the Microsoft Teams authorization prompts.
5. Return to CloudVerse and verify that the integration card shows an active connection.
## Configure notifications
After connecting, go to **Settings > Notification Settings** to choose which alerts to route to Microsoft Teams and configure recipients or channels.
## Best practices
- Use a dedicated integration user or bot account rather than a personal account.
- Review which alerts are routed and to which channels — avoid routing all alerts to a high-traffic channel.
## Troubleshooting
- **Authorization fails** — Ensure your Microsoft Teams account has permission to install apps or integrations.
- **Alerts not arriving** — Check that the notification is configured in **Settings > Notification Settings** with the correct destination.
See [Integration setup issues](../troubleshooting/integrations.md) for more help.
---
## Tencent Cloud
Source: `integrations/tencent.md`
URL: /integrations/tencent/
# Tencent Cloud
Connect Tencent Cloud to bring billing and resource inventory data into CloudVerse AI.
## What you get
- Billing data from Tencent Cloud billing exports
- Resource inventory across regions and services
- Cost analysis and anomaly detection
## Prerequisites
- Tencent Cloud account with billing access
- API credentials or authentication tokens with the required permissions
## Connect Tencent Cloud
1. Go to **Settings > Integrations**.
2. Select **Tencent Cloud**.
3. Enter a connection name.
4. Complete the authentication step using your Tencent Cloud API credentials.
5. Choose the billing and discovery scope.
6. Finish the flow and wait for initial data ingestion.
## Verify the connection
1. Open the Tencent Cloud connection detail page in **Settings > Integrations**.
2. Confirm that billing and discovery status indicators are green.
3. Open **Cost Management > Cost Explorer** and filter by **Provider: Tencent Cloud** to confirm data appears.
## Data expected
| Data | Used for |
|---|---|
| Billing and usage rows | Spend analysis, dashboards, and anomaly checks. |
| CVM and related service inventory | Resource Inventory and optimization context. |
| Region and account metadata | Filtering and ownership review. |
## Best practices
- Use read-only, least-privilege credentials.
- Rotate credentials on schedule and update them in CloudVerse promptly.
- Keep secret IDs and secret keys in an approved vault outside the documentation system.
## Troubleshooting
See [Integration setup issues](../troubleshooting/integrations.md) if data does not appear after setup.
---
## MSP Workspaces
Source: `msp/index.md`
URL: /msp/
# MSP Workspaces
## Overview
MSP Workspaces let one CloudVerse organization subdivide the platform into a hierarchy of isolated workspaces. A managed service provider, reseller, or any organization with distinct downstream customers can give each of them their own scoped cost view, apply a markup on the cloud spend it passes down, and still keep full visibility over the whole tree.
The organization that owns the CloudVerse subscription keeps the complete FinOps product. Everything beneath it is a workspace: a bounded slice of the platform with its own users, its own allocated cloud accounts, its own cost data, and optionally its own markup rate.
## Who can use this
- `MSP Root Admin` — full platform access and management of the entire workspace tree.
- `MSP Managed Workspace Manager` — manages one workspace and everything below it.
- `MSP Customer Dashboard User` — views the cost dashboard for a single workspace.
Availability depends on tenant rollout. If the Workspaces tab or workspace actions are missing, confirm your role and that MSP Workspaces is enabled for your tenant.
## How the hierarchy works
Workspaces form a tree. Each workspace sees itself and everything below it, and never sees its parent or its siblings.
```
Root organization
└── Managed workspace e.g. a reseller customer
├── Normal workspace e.g. that customer's production team
└── Normal workspace e.g. that customer's development team
```
Two rules hold at every level:
- **Allocation flows downward only.** A workspace can allocate cloud accounts only to its own children, and only accounts it already holds. It can never allocate to a sibling or to its parent.
- **Visibility flows downward only.** A parent sees everything in its own subtree. A child never sees its parent or a sibling.
## Workspace types
You choose one of two types when creating a workspace. This choice determines whether that workspace can build a hierarchy beneath it.
| Type | Label in the UI | What it can do |
|---|---|---|
| Managed | `Managed (can own children)` | Creates child workspaces, allocates accounts downward, invites its own users, and sets billing rules for the workspaces below it. |
| Normal | `Normal (leaf)` | Views cost data for its own allocated accounts. Cannot create children or allocate accounts. |
Choose `Managed` if the workspace will ever onboard its own users or sub-workspaces. Choose `Normal` if it is the end of the line.
There is no fixed depth limit. A `Managed` workspace can sit under another `Managed` workspace as deep as your business structure requires.
## The root workspace
The root workspace is not a special object type. It is an ordinary `Managed` workspace at the top of the tree, owned directly by your organization rather than by another workspace. An administrator with organization-level admin permission creates it through the standard workspace flow.
## Core concepts
| Concept | Meaning |
|---|---|
| Workspace | A bounded access and cost boundary within a tenant. |
| Account allocation | The explicit assignment of connected cloud accounts to a workspace. A workspace sees only the cost of the accounts allocated to it. |
| Billing rule | A markup rate on the edge between a parent workspace and one specific child. |
| Preview | A root administrator viewing a workspace's dashboard without changing their own identity. |
| Workspace switcher | A control that moves your working context between your own direct child workspaces. |
## Quick links
- [Set up a workspace hierarchy](setting-up-workspaces.md) — create workspaces, allocate accounts, invite users, set branding.
- [Markup and billing rules](markup-and-billing.md) — apply and interpret markup between workspaces.
- [Switching context and previewing](switching-and-preview.md) — move between workspaces and inspect a customer's view.
## Expected result
Each workspace's users sign in and see a cost dashboard scoped to exactly the cloud accounts allocated to them, priced at the rate their parent charges them, with no visibility into any other workspace.
## Notes and limitations
- A workspace sees no cost data until cloud accounts are allocated to it.
- One cloud account cannot be allocated to two sibling workspaces at the same time.
- A workspace never sees the markup applied to itself.
- Cost Explorer and the cost dashboard are the primary workspace-aware surfaces. Other modules become workspace-aware on a rolling basis.
---
## Markup and Billing Rules
Source: `msp/markup-and-billing.md`
URL: /msp/markup-and-billing/
# Markup and Billing Rules
## Overview
A billing rule applies a markup to the cloud cost a parent workspace passes down to one specific child. Use billing rules when you resell cloud spend and charge a customer more than the underlying provider cost.
A billing rule belongs to the edge between a parent and one child, not to the workspace itself. The same parent can charge different children different rates, and changing one child's rate never affects another.
## Who can use this
You need workspace management permission on the parent workspace. `MSP Root Admin` can set rules anywhere in the tree. `MSP Managed Workspace Manager` can set rules for children of the workspaces they manage.
## Before you begin
Decide:
- Which child workspace the rate applies to.
- Whether to charge a percentage markup or a flat fee.
- The rate, and what the resulting effective rate will be for that customer.
## Create a billing rule
1. Open the parent workspace's `Billing Rules` tab, or open `Organization > Overview > Workspaces`, select the workspace, and choose `Billing Rules`.
2. Select `New billing rule`.
3. Select the child workspace the rate applies to.
4. Enter a `Name` for the rule.
5. Select `Markup type`: `Percentage` or `Flat fee`.
6. Enter the rate in `Markup %` or `Flat fee`.
7. Optionally set `Effective from`.
8. Select `Save rule`.
You can also set the first rule for a new workspace during step 4 of the creation wizard.
## Understand the effective rate preview
When you select `Percentage`, the form shows a live preview while you type:
| Row | Meaning |
|---|---|
| Upstream | The rate already applied above this edge, if any. |
| This rule (new) | The rate you are entering now. |
| Compounded effective | The resulting total rate relative to raw cloud cost. |
Markup compounds multiplicatively. A 10% upstream rate followed by a 5% rate on this edge produces a 15.5% compounded effective rate, not 15%.
This preview appears only while you are creating or editing a rule, so you can see exactly what the downstream workspace will be charged before you save.
## How markup appears after saving
What a viewer sees day to day is deliberately narrower than the creation preview.
- A parent viewing one of its children sees a single markup indicator: the rate on the edge from itself to that child.
- The indicator never shows the compounded, multi-hop rate accumulated further up the tree.
- A workspace viewing its own dashboard sees **no markup indicator at all**. A workspace never sees the rate applied to itself.
The markup indicator reads `MARKUP — rate applied to this workspace` and displays the parent workspace, the edge rate, and the child workspace.
This keeps each customer's view limited to what their direct provider charges them, and never exposes what anyone further up the chain charges.
## Where markup appears in cost data
Markup is applied when cost is read, not when billing data is ingested. A workspace's dashboard, Cost Explorer, and exports show the marked-up cost that workspace is charged. The cost-by-service breakdown uses the same visible edge rate as the header indicator.
## Expected result
The billing rule appears in the parent's `Billing Rules` tab with its rate and status. The child workspace's cost figures reflect the marked-up amount, and the child sees no indication that a markup was applied.
## Notes and limitations
- Billing rules apply to direct parent-child edges only. You cannot set a rule that skips a level.
- A rule for one child never supersedes a rule for a sibling.
- Leaving a workspace without a billing rule makes the relationship pass-through at 0%.
- Historical re-rating is not supported. Changing a rate affects how cost is presented from that point forward.
## Troubleshooting
If `New billing rule` is missing, confirm your role includes workspace management permission on the parent workspace.
If a markup indicator does not appear where you expect one, confirm you are viewing a child workspace rather than your own. A workspace never displays the markup applied to itself.
---
## Setting Up Workspaces
Source: `msp/setting-up-workspaces.md`
URL: /msp/setting-up-workspaces/
# Setting Up Workspaces
## Overview
Create a workspace, allocate cloud accounts to it, invite its users, and apply branding. Repeat one level down for each workspace that manages its own customers or teams.
## Who can use this
You need:
- `MSP Root Admin` to create workspaces directly under the root organization.
- `MSP Managed Workspace Manager` to create workspaces under a workspace you manage.
- `workspace:modify` to edit workspace settings and branding.
- `user:add` to invite users into a workspace.
A workspace manager can act only inside their own subtree.
## Before you begin
Confirm:
- The cloud accounts you will allocate are connected and visible in your own account pool.
- Whether the new workspace needs to manage workspaces of its own — this decides `Managed` or `Normal`.
- The markup rate, if you are charging this workspace above raw cloud cost.
- The name and email of the workspace's first user.
## Create a workspace
Two entry points open the same six-step wizard.
To create a workspace directly under the root organization:
1. Open `Organization > Overview`.
2. Select `Workspaces`.
3. Select `New managed customer`.
To create a workspace under a workspace you manage:
1. Open `Workspace`.
2. Select `Child workspaces`.
3. Select `New workspace`.
Then complete the wizard:
1. **Basics** — enter `Name` and an optional `Description`. Select `Workspace type`: `Managed (can own children)` or `Normal (leaf)`.
2. **Ownership** — select the `Parent workspace`. Leave empty to attach directly under your root scope.
3. **Account allocation** — select the cloud accounts to allocate. See [Allocate cloud accounts](#allocate-cloud-accounts).
4. **Billing rule** — enter `Markup %`, or skip to leave the workspace pass-through at 0%. See [Markup and billing rules](markup-and-billing.md).
5. **Team & access** — optionally enter a `Team name` and select `Member user IDs` from active users.
6. **Review** — check the summary and select `Confirm & create`.
If a step fails after the workspace is created, the wizard keeps your progress and shows `Retry`. Selecting `Retry` resumes from the failed stage instead of creating a duplicate workspace.
## Allocate cloud accounts
A workspace sees no cost data until you allocate accounts to it. You can allocate during wizard step 3 or at any time afterwards.
1. Open the workspace's `Account Allocations` tab, or select `Allocate accounts` on a child workspace row.
2. Filter by `Provider` or search in `Search accounts by name or ID`.
3. Select `Add` on each account to allocate, or `Select all shown` to add every account matching the current filter.
4. Select `Save allocation`.
The table shows each account's name, cloud ID, and type: `Standalone account`, `Consolidated billing account`, or `Sub-account`. Selecting a parent account automatically includes its sub-accounts, which display `Included with parent`.
Accounts already allocated to a sibling workspace are disabled and show `Allocated to `. One account cannot serve two siblings at once.
To remove every allocated account, select `Remove all` and confirm. The workspace loses access to that cost data.
!!! note
You can only allocate accounts your own workspace already holds. The picker shows your own pool only. At the root, it shows the full connected inventory.
## Invite users
Users are created directly into the workspace where they belong.
1. Open the workspace's `Users` tab.
2. Select `Add User`.
3. Choose `Tenant User` or `External User`.
4. Enter `Name` and `Email Address`.
5. Select `Role`.
6. Keep `Login using SSO` selected under `Select Authentication Method:` if the user signs in with SSO.
7. Select `Add`.
A workspace manager can assign only `MSP Customer Dashboard User` inside their workspace. A root administrator sees the full role catalogue and can assign organization-level roles, including `MSP Managed Workspace Manager` for a workspace that needs to manage itself.
If the `Users` tab shows `No workspace allocated.`, select a workspace first — a user always needs a workspace context.
## Apply branding
Branding changes the name and logo the workspace's own users see in their dashboard header and workspace switcher.
1. Open the workspace's `Branding` tab, or open `Organization > Overview > Workspaces`, select the workspace, and choose `Branding`.
2. Enter a `Brand name` of up to 60 characters.
3. Upload a `Logo` in JPG, JPEG, PNG, or SVG format, up to 5 MB.
4. Select `Save branding`.
Select `Remove logo` to clear an existing logo.
## Build the next level down
A `Managed` workspace repeats this whole process for its own customers. Its manager signs in, opens `Workspace`, and creates child workspaces, allocating from the account pool the parent gave them and inviting their own users. Everything stays scoped to their subtree.
## Expected result
The workspace appears in the workspace list with its owner, type, and status. Its users sign in and see a cost dashboard covering exactly the accounts allocated to it.
## Notes and limitations
- Users are created against a specific workspace. There is no single action that moves a user between workspaces — remove the user from one workspace and add them to the other.
- Adding a user to a team requires that the user is already registered in that workspace.
- A `Normal` workspace cannot create children or allocate accounts.
## Troubleshooting
If `New workspace` or `New managed customer` is missing, confirm your role includes workspace management permission for the target workspace.
If an account does not appear in the allocation picker, confirm it is allocated to your own workspace and not already allocated to a sibling.
If an invite fails with a permission error, confirm your role includes `user:add`.
---
## Switching Context and Previewing
Source: `msp/switching-and-preview.md`
URL: /msp/switching-and-preview/
# Switching Context and Previewing
## Overview
Because a parent workspace can see everything in its own subtree, root administrators and workspace managers can move their working context between workspaces. How this works depends on who you are: a root administrator *previews* a workspace, while a workspace manager *switches* into one.
## Who can use this
- `MSP Root Admin` — previews any workspace in the tree.
- `MSP Managed Workspace Manager` — switches between workspaces in their own subtree.
A `MSP Customer Dashboard User` in a leaf workspace has nothing to switch to and does not see the control.
## The workspace switcher
The switcher appears in two places:
- A dropdown in the sidebar showing the current workspace name.
- A `Workspace` selector above the dashboard.
Both list your `Home` workspace and your **direct children only**. Grandchildren never appear, which keeps the list readable in a deep hierarchy. To reach a deeper workspace, switch into the intermediate workspace first, then switch again from there.
Each entry is tagged `managed` or `normal`. Use the search box to filter a long list.
## Preview a workspace as a root administrator
Previewing shows a workspace's dashboard without changing your identity. You keep your own full product access throughout.
From the workspace switcher:
1. Open the workspace switcher.
2. Select the workspace to preview.
From the workspace list:
1. Open `Organization > Overview`.
2. Select `Workspaces`.
3. Select the workspace row to open its detail panel.
4. Select `Preview as customer`.
While previewing, a `Preview` banner shows the workspace name. The dashboard displays that workspace's cost data, including the markup indicator for the edge from your workspace down to it.
To leave, select `Exit preview` in the banner, or select `Home` in the workspace switcher.
## Switch context as a workspace manager
When a workspace manager selects a workspace in the switcher, the working context moves to that workspace. This is a genuine context change rather than a preview, so no preview banner appears — the manager is moving between workspaces they own, not inspecting someone else's.
Select `Home` at any time to return to your own workspace.
## Data isolation
The workspace model enforces these boundaries:
| Boundary | Behavior |
|---|---|
| Sibling workspaces | Cannot see each other's users, allocated accounts, cost data, or markup. |
| Child to parent | A child never sees its parent's users, accounts, cost data, or rates. |
| Parent to child | A parent sees everything in its own subtree, at every level below it. |
| Own markup | A workspace never sees the markup applied to itself. |
| Users | A user created in a workspace is visible to that workspace and to every workspace above it, never to a sibling. |
To verify isolation for a data-sensitive rollout, create two sibling workspaces and confirm that neither one's users, accounts, or cost figures are reachable from the other, and that each sees only its own single markup edge.
## Expected result
A root administrator can inspect any workspace's dashboard exactly as its own users see it, then return to full product access. A workspace manager can move freely across their own subtree and nowhere else.
## Notes and limitations
- The switcher shows direct children only, never grandchildren.
- A root administrator keeps full product navigation while previewing.
- Preview is read-oriented. Use the workspace management screens rather than preview to change a workspace's configuration.
## Troubleshooting
If the workspace switcher shows static text instead of a dropdown, you have no other workspace to switch to.
If `Preview as customer` returns an authorization error, confirm your role permits previewing that workspace and that the workspace is not archived.
If you appear to be in the wrong workspace, check for the `Preview` banner and select `Exit preview` to return to your own context.
---
## Commitment Optimizer
Source: `optimization/commitment-optimizer.md`
URL: /optimization/commitment-optimizer/
# Commitment Optimizer
**Commitment Optimizer** helps you plan, purchase, and manage Reserved Instances (RIs) and Savings Plans across AWS, Azure, and GCP — tracking coverage, utilization, and savings in one place.
## When to use it
- You want to understand your current commitment coverage and utilization.
- You're planning a new RI or Savings Plan purchase.
- You have underutilized commitments generating waste.
- You want to automate commitment renewals with governance guardrails.
## Open Commitment Optimizer
Go to **Optimization > Commitment Optimizer** from product navigation.
## Tabs
| Tab | What it shows |
|---|---|
| **Overview** | Coverage, utilization, cost breakdown, expiry calendar, realized and missed savings |
| **Inventory** | All active commitments with status, utilization, expiry, and savings |
| **Recommendations** | Suggested buys, modifications, or disposals |
| **Forecasting** | Projected coverage and cost under current vs. recommended posture |
| **Execution** | Governance settings and approval-gated purchase automation |
## Review your commitment posture
1. Apply provider, account, environment, service family, and region filters.
2. On the **Overview** tab, check:
- **Coverage %** — what percentage of eligible spend is covered by commitments
- **Utilization** — are existing commitments being fully used?
- **Missed savings** — cost that could have been covered by commitments but wasn't
- **Expiry timeline** — commitments expiring soon need renewal decisions
## Act on recommendations
1. Open the **Recommendations** tab.
2. Filter by environment, action type (buy, modify, dispose), risk, and status.
3. Select a recommendation to review scope, term, risk, and expected savings.
4. Approve, dismiss, or route the recommendation per your governance process.
## Configure execution
In the **Execution** tab, configure:
| Setting | Options |
|---|---|
| **Term** | 1 year, 3 years |
| **Risk posture** | Conservative, Balanced, Aggressive |
| **Renewal posture** | Auto-renew, Manual review |
| **Autonomy mode** | Recommend only, Approval required, Auto reduce |
| **Payment option** | No upfront, Partial upfront, All upfront |
!!! warning "Start with Approval required"
Use **Approval required** mode until your commitment strategy and coverage are validated. Full automation should only be enabled after several approval cycles confirm the recommendations align with your expectations.
## Best practices
- Resolve inventory gaps and underutilization before adding new commitments.
- Separate production and non-production commitment strategies.
- Set different risk postures per environment — aggressive for stable prod, conservative for dev.
- Review expiring commitments monthly, not just at renewal time.
- Treat missed savings as a planning metric, not a failure — use it to right-size future purchases.
## Related pages
- [Recommendations](recommendations.md) — general cost-saving opportunities
- [Spot Optimizer](spot-optimizer.md) — complement commitments with Spot usage
---
## Optimize
Source: `optimization/index.md`
URL: /optimization/
# Optimize
CloudVerse optimization turns billing, inventory, and telemetry into ranked savings actions. Each action should explain the resource, evidence, confidence, savings estimate, risk, and execution path.
## Recommendation lifecycle
| Stage | What to confirm |
|---|---|
| Discovery | Required billing, inventory, and telemetry inputs are present. |
| Evidence | The recommendation includes enough utilization, cost, and ownership context. |
| Decision | Owners approve, dismiss, snooze, or route the action. |
| Execution | Approved actions go through workflows, automation, or manual change paths. |
| Verification | Realized savings and post-change state are reconciled. |
## Safe optimization posture
Start with high-confidence, low-risk recommendations. Use approval-required workflows for production changes, commitments, Spot migrations, and destructive actions.
---
## License Optimizer
Source: `optimization/license-optimizer.md`
URL: /optimization/license-optimizer/
# License Optimizer
**License Optimizer** tracks cloud software licenses running in your cloud estate — operating systems, database engines, and other licensed software — to prevent compliance exposure and reduce license waste.
## When to use it
- You want visibility into which licensed software is running in the cloud and what it costs.
- You suspect over-licensing or under-utilization of paid licenses.
- You want to evaluate license model changes (e.g., BYOL vs. included license).
## Open License Optimizer
Go to **Optimization > License Optimizer** from product navigation.
## Connect license sources
License Optimizer uses entitlement sources to track licenses. To connect a license source:
1. Go to **Optimization > License Optimizer > Sources**.
2. Add the relevant entitlement source (software vendor portal, cloud marketplace, or inventory feed).
3. Wait for license inventory to populate.
## Review license inventory
1. Open the License Optimizer overview.
2. Filter by provider, account, license type, or software category.
3. Review utilization — licenses with low utilization may be consolidation candidates.
4. Review compliance risk — licenses with high utilization near their limit need attention.
5. Open a license recommendation to see the suggested change and estimated savings.
## Best practices
- Keep license data sources up to date — stale data leads to incorrect compliance assessments.
- Distinguish between cloud-included licenses (already in the service price) and BYOL (customer-managed).
- Work with procurement and legal before acting on license recommendations that affect vendor agreements.
## Related pages
- [SKU & Region Optimizer](sku-optimizer.md) — optimize instance types alongside license decisions
- [Recommendations](recommendations.md) — all optimization opportunities
---
## ML Recommendations
Source: `optimization/ml-recommendations.md`
URL: /optimization/ml-recommendations/
# ML Recommendations
**ML Recommendations** is a direct, permission-gated optimization workspace for opportunities, savings, policies, automation, and saved views. It is available if enabled and does not appear in the primary navigation.
## Availability
Open **Optimization > ML Recommendations** when it is enabled for your organization. If you do not see the page, use [Recommendations](recommendations.md) for the primary optimization workflow or ask an administrator to confirm access.
## Review opportunities
1. Use the global filters and saved views to set the scope.
2. Review opportunity rows and savings summaries.
3. Open an opportunity to inspect **Resource**, **Account / Region**, **Service**, **Savings**, **Confidence**, and **Routing**.
4. Add optional implementation or business context during review.
## Create a policy
1. Open the policy create action.
2. Enter a policy name and description.
3. Choose an outcome: **Auto-forward**, **Keep in review**, **Require approval**, or **Monitor only**.
4. Configure provider, account, region, service, recommendation, confidence, savings, and environment conditions as available.
5. Choose **Any environment**, **Production only**, or **Non-production only**.
6. Save the policy.
The automation table includes **Policy**, **Outcome**, **Conditions**, **Priority**, **Matched in Current Scope**, **Monthly Savings**, **Status**, and **Actions**.
## Operating model
| Mode | Use it when |
|---|---|
| Monitor only | You want policy impact data before routing work. |
| Keep in review | Engineers should inspect opportunities manually. |
| Require approval | The change is eligible for automation but needs an owner to approve it. |
| Auto-forward | The recommendation is low-risk and can be routed directly to an implementation queue. |
Start with monitor-only or review-required policies until the team understands match rates, false positives, and ownership routing.
---
## Recommendations
Source: `optimization/recommendations.md`
URL: /optimization/recommendations/
# Recommendations
**Optimization Recommendations** is your centralized catalog of savings opportunities across compute, storage, database, networking, and AI workloads — backed by usage evidence, risk ratings, and step-by-step implementation guidance.
## When to use it
- You want to find and prioritize cost-saving actions across your cloud accounts.
- You need to review a recommendation before implementing it in production.
- You want to dismiss, track, or route a recommendation to the right team.
## Open Recommendations
Go to **Optimization > Recommendations** from product navigation.
## Review and act on recommendations
### 1. Apply filters
Filter the list by: **Provider**, **Account**, **Region**, **Service**, **Environment**, **Recommendation Type**, **Confidence**, **Risk**, or **State** (open, dismissed, approved).
### 2. Understand the summary
The top of the page shows total recommendations, potential monthly savings, and a breakdown by category.
### 3. Select a recommendation
Each recommendation detail shows:
| Field | What it means |
|---|---|
| **Resource** | The specific cloud resource (name, ID, account, region) |
| **Current configuration** | What the resource is today (instance type, size, tier) |
| **Target configuration** | The recommended change |
| **Monthly savings** | Projected cost reduction |
| **Confidence** | How much usage evidence supports the recommendation |
| **Risk** | Operational impact if the recommendation is applied |
| **Evidence** | Usage trend graph (CPU, memory, I/O, etc.) |
| **Implementation guidance** | Steps to apply the change |
### 4. Take action
Depending on available actions and your permissions:
- **Approve** — mark the recommendation as accepted and route to implementation
- **Dismiss** — remove from the active list (record the reason)
- **Route** — send to a Jira ticket, ServiceNow request, or workflow
## Recommendation types
Recommendations can cover: compute rightsizing, idle resource cleanup, storage tiering or deletion, database cleanup, log retention reduction, network cost optimization, resource scheduling, commitment purchases, and service-specific opportunities.
## Best practices
- **Prioritize by savings × confidence × risk** — not savings alone. A high-savings recommendation with Low confidence or High risk needs more investigation.
- **Check environment before acting** — confirm production status and resource owner before making a change.
- **Compare current and target config** — don't rely solely on the savings estimate.
- **Document dismissals** — record why a recommendation was dismissed so you can revisit it later.
- **Review after infrastructure changes** — new deployments and billing corrections generate new recommendations.
## Troubleshooting
If no recommendations appear, see [Missing recommendations and anomalies](../troubleshooting/missing-recommendations.md).
---
## SKU & Region Optimizer
Source: `optimization/sku-optimizer.md`
URL: /optimization/sku-optimizer/
# SKU & Region Optimizer
**SKU & Region Optimizer** compares cloud instance types, platforms, and regions to find the most cost-effective configuration for your workloads — without sacrificing performance or compliance requirements.
## When to use it
- You suspect a workload is running on a suboptimal instance type or in an unnecessarily expensive region.
- You want to evaluate moving a workload to a different cloud provider or platform.
- You need to justify a migration decision with cost evidence.
## Open SKU & Region Optimizer
Go to **Optimization > SKU Optimizer** from product navigation.
## Recommendation types
| Type | What it means |
|---|---|
| **Platform Change** | Move to a different instance family or generation (e.g., older to newer gen) |
| **Provider Change** | Move a workload to a different cloud provider |
| **Region Change** | Move a workload to a cheaper region with equivalent SLA requirements |
## Review a recommendation
1. Select a workload from the list.
2. Review the current configuration and the recommended alternative.
3. Check the estimated monthly savings and any additional cost factors:
- Data transfer costs between regions or providers
- Licensing changes (e.g., Windows vs. Linux)
- Compliance requirements (data residency)
4. Approve, dismiss, or route to your infrastructure team.
## Best practices
- Always factor in data transfer costs — a cheaper region may cost more if your workload moves large amounts of data across regions.
- Consider latency alongside cost — a cheaper region that adds latency for end users may not be worth the savings.
- Validate compliance and data residency requirements before recommending a provider or region change.
- Test workload performance in the new configuration before full migration.
## Related pages
- [Recommendations](recommendations.md) — all optimization opportunities
- [License Optimizer](license-optimizer.md) — software license cost optimization
---
## Spot Optimizer
Source: `optimization/spot-optimizer.md`
URL: /optimization/spot-optimizer/
# Spot Optimizer
**Spot Optimizer** identifies workloads that can safely run on Spot (preemptible) instances and provides guidance to migrate them — with interruption handling and fallback strategies built in.
## When to use it
- You want to reduce compute costs by using discounted Spot capacity.
- You need to evaluate which workloads are suitable for Spot without risking production stability.
- You want guardrails and fallback plans for Spot usage.
## Open Spot Optimizer
Go to **Optimization > Spot Optimizer** from product navigation.
## Evaluate workload suitability
Spot Optimizer analyzes workloads based on:
- **Statelessness** — can the workload resume without data loss if interrupted?
- **Fault tolerance** — does the application handle instance termination gracefully?
- **Interruption history** — how often has this Spot pool been interrupted?
Workloads are rated for Spot suitability. Do not move production-critical, stateful workloads to Spot without a tested fallback strategy.
## Plan a Spot migration
1. Review the workload list and identify High suitability candidates.
2. Open a workload to review its suitability rating, estimated savings, and recommended instance types.
3. Plan Availability Zone (AZ) diversification to reduce interruption risk.
4. Configure fallback to On-Demand if Spot capacity is unavailable.
5. Implement with your infrastructure team and test interruption handling before production use.
## Best practices
- Start with batch, CI/CD, dev, or test workloads — these tolerate interruption best.
- Use multiple instance types and AZs to improve Spot availability.
- Implement checkpointing or retry logic in stateful workloads before moving to Spot.
- Monitor Spot interruption rates after migration and adjust pool selection if needed.
## Related pages
- [Commitment Optimizer](commitment-optimizer.md) — combine Spot with Reserved Instance coverage
- [Recommendations](recommendations.md) — broader list of compute optimization opportunities
---
## Organization settings
Source: `organization/organization-settings.md`
URL: /organization/organization-settings/
# Organization settings
Organization settings control display currency, customization, and organization-level defaults.
## Currency
Go to **Organization > Currency**.
1. Select the intended display currency.
2. Save the change.
3. Reopen a cost page and confirm the displayed currency.
Currency changes presentation. They do not change the provider’s source billing currency or rewrite exported source data.
## Customization
Go to **Organization > Customization**.
Use the available controls to configure supported platform appearance and organization preferences. Exact controls depend on the enabled customization features.
## Settings Overview
A direct **Organization Settings** page exists at the settings overview route. It is available if enabled and can contain organization defaults, notifications, platform preferences, API access, and administrative settings.
## Change review
| Change | Review before saving |
|---|---|
| Currency | Dashboards, reports, exports, and stakeholder expectations. |
| Customization | Brand approval and accessibility contrast. |
| Organization defaults | Impact on existing users, automations, alerts, and reports. |
| Administrative settings | Whether the change affects all users or only administrators. |
## Best practices
- Agree on one reporting currency for shared dashboards and reports.
- Record the source currency and conversion context when publishing financial figures.
- Use approved brand assets and accessible colors for customization.
- Test organization-wide changes with a small administrator group.
---
## Perspectives
Source: `organization/perspectives.md`
URL: /organization/perspectives/
# Perspectives
**Perspectives** map your cloud resources and spend to business entities — teams, products, environments, cost centers, and applications — so you can analyze and allocate cost in terms your business understands.
## When to use Perspectives
- You want Cost Explorer filters that match your organization structure (team, product, environment) rather than cloud accounts.
- You need to assign budget ownership to a team or product, not just an AWS account.
- You want anomaly detection scoped to a specific application or environment.
- You want to give a team lead access only to their team's cost data.
## Open Perspectives
Go to **Organization > Perspectives** from product navigation.
!!! info "Beta feature"
Perspectives is currently marked Beta. Core functionality is available, but some advanced features may change.
## Create a Perspective
1. Click the create action.
2. Choose a **category** — for example, Team, Product, Environment, or Cost Center.
3. Add **conditions** that identify matching resources:
- Filter by provider, service, region, account, tags, resource groups, or other supported fields.
- Conditions are evaluated as AND — all conditions must match.
4. (Optional) Link **Unit Economics** metrics to this Perspective.
5. Enter the Perspective name and assign an owner.
6. Configure budget or advanced options if shown.
7. Review the generated preview — confirm the matched resources look correct.
8. Save.
## Manage Perspectives
- **Edit** — update the conditions, name, or owner.
- **Hierarchy Map** — view and manage relationships between Perspectives. Use fullscreen for larger estates.
- **Perspective Anomalies** — detect unusual spend changes within this Perspective's scope.
- **Clone** — duplicate a Perspective as a starting point for a related scope.
## Use Perspectives across CloudVerse AI
Once created, Perspectives are available as filters and groupings in:
- **Cost Explorer** — group or filter by Perspective
- **Budgets** — scope a budget to a Perspective
- **Anomaly Detection** — monitor anomalies within a Perspective scope
- **Chargeback & Allocation** — allocate costs based on Perspective rules
- **Users & Roles** — assign a Dynamic Perspective scope to limit user visibility
## Best practices
- Assign an owner to every Perspective — it should be clear who is accountable for that scope.
- Make Perspective boundaries as mutually exclusive as possible to avoid double-counting.
- Preview matched resources before saving — a misconfigured condition can silently miss resources.
- Recheck Perspective coverage after tag changes, account additions, or org restructures.
- Start with a few key scopes (main teams, environments) before expanding to granular Perspectives.
## Related pages
- [Access scopes](../rbac/access-scopes.md) — use Perspectives to limit user visibility
- [Anomaly Detection](../cost-management/anomalies.md) — Perspective-scoped anomaly monitoring
- [Budgets](../cost-management/budgets.md) — Perspective-scoped budgets
- [Chargeback & Allocation](../cost-management/chargeback-allocation.md) — Perspective-based cost allocation
---
## Access Scopes
Source: `rbac/access-scopes.md`
URL: /rbac/access-scopes/
# Access Scopes
## Overview
Access scopes limit what a `Perspective User` can see. Use scopes when a user should work only with selected providers, accounts, regions, services, tags, billing accounts, or resource groups.
## Who can use this
You need permission to edit users.
## Before you begin
Confirm that:
- The user has or will have the `Perspective User` role.
- Dynamic Perspectives exist for the data you want to scope.
- You know which perspective or filter conditions should apply.
## Add scope from an existing perspective
1. Open `Organization > Overview`.
2. Select `Users`.
3. Find the user and select `Edit`.
4. In `Role`, select `Perspective User`.
5. Select `Select Perspectives`.
6. On the `Select Perspective` page, use `Search` if needed.
7. Select one or more rows in the `Perspective` table.
8. Select `Confirm`.
CloudVerse saves the selected perspective filters as the user's scope and returns to `Edit User`.
## Apply selected items from a perspective tree
1. Open `Select Perspective`.
2. In the row you want to inspect, select `View`.
3. In `Perspective Tree View`, choose a date range if needed.
4. Select items in the preview tree.
5. Select `Apply Selection`.
CloudVerse saves the selected tree items as scope filters.
## Create a custom scope
1. Open `Select Perspective`.
2. Select `Create Scope`.
3. On `Configure Scope`, use the `Scope` panel to add dimensions.
4. Use `Conditions` to choose allowed values.
5. Review the `Preview`.
6. Select `Save Scope`.
Use `Clear All` to remove the current draft before saving.
## Expected result
The user sees a `Dynamic Perspective Scope` preview on the `Edit User` page. If no scope is configured, the preview shows `No scope configured`.
## Notes and limitations
- The scope UI appears only when `Perspective User` is selected.
- Removing `Perspective User` from a scoped user shows `Scope will be removed`.
- Saving scope stores filters, not group-by settings.
## Troubleshooting
If `Select Perspectives` is missing, confirm the user has `Perspective User` selected in `Role`.
If `Save Scope` is disabled, add at least one condition.
If the preview is empty, adjust the date range or conditions. The UI shows `No results found` when the selected perspective does not return preview data.
---
## Assigning Users or Members
Source: `rbac/assigning-users-or-members.md`
URL: /rbac/assigning-users-or-members/
# Assigning Users or Members
## Overview
Use the `Users` tab to invite users, assign roles, update authentication settings, and activate or deactivate access.
## Who can use this
You need:
- `user:view` to see users.
- `user:add` to invite users.
- `user:modify` to update a user.
- `user:activate` or `user:deactivate` to change user status.
- `user:delete` to delete another user.
- `user:leave` to leave the tenant yourself.
## Before you begin
Confirm:
- The user's name and email address.
- Whether the user is a `Tenant User` or `External User`.
- The roles to assign.
- Whether the user should use SSO.
- Whether the user needs a Dynamic Perspective scope.
## Invite a user
1. Open `Organization > Overview`.
2. Select `Users`.
3. Select `Add User`.
4. Choose `Tenant User` or `External User`.
5. Enter `Name`.
6. Enter `Email Address`.
7. Select one or more roles in `Role`.
8. If the user should use SSO, keep `Login using SSO` selected under `Select Authentication Method:`.
9. If the selected role includes `Perspective User`, select `Select Perspective` and configure the user's scope.
10. Select `Add`.
## Edit a user
1. Open `Users`.
2. In the user's row, select `Edit`.
3. Update `Role`.
4. Update `Authentication Method` if needed.
5. If `Perspective User` is selected, use `Select Perspectives` to review or change scope.
6. Select `Save`.
Name and email are displayed but disabled on the edit page.
## Activate or deactivate users
1. Open `Users`.
2. Select one or more user rows.
3. Select `De-activate` or `Re-activate`.
4. Review the confirmation.
5. Select `Confirm`.
New users cannot be selected for bulk status changes.
## Delete a user
1. Open `Users`.
2. In the user's row, select `Delete`.
3. Review the warning.
4. Select `Confirm`.
Deleting a user removes their access to CloudVerse.
## Leave a tenant
If you are viewing your own row and have permission, the action is `Leave`.
1. Select `Leave`.
2. Enter the requested confirmation value.
3. Select `Yes, leave tenant`.
CloudVerse signs you out after you leave the tenant.
## Expected result
The user list updates with the user's current role, status, and user type.
## Notes and limitations
- Users can have multiple roles.
- Owners and the current signed-in user cannot have roles changed from the user edit controls.
- Tenant user emails must match the organization domain.
- External user emails cannot use the organization domain.
- Team membership can also be managed from **Organization > Overview > Teams** when team write actions are enabled.
## Troubleshooting
If `Add User` is missing, confirm your role includes `user:add`.
If role selection is disabled, the target user may be an owner or your own signed-in user.
If an email is rejected, check whether the user type matches the email domain.
---
## Creating a Role
Source: `rbac/creating-a-role.md`
URL: /rbac/creating-a-role/
# Creating a Role
## Overview
Create a custom role when the built-in roles do not match the access pattern your team needs.
## Who can use this
You need `role:add`.
## Before you begin
Plan the role before creating it:
- Role name.
- Short description.
- Product privileges.
- Whether users need read-only or read/write access.
## Create a custom role
1. Open `Organization > Overview`.
2. Select `Roles`.
3. Select `Add Custom Role`.
4. In `Role Name`, enter a clear name.
5. In `Description`, enter a short description.
6. In the privileges table, expand the product areas you want to configure.
7. Select the required permissions in the `Permissions` column.
8. Select `Add`.
## Expected result
The role appears in the roles table with `ROLE TYPE` set to `Custom`.
## Notes and limitations
- `Role Name` is required.
- `Description` is optional in the UI.
- The privilege table disables permission checkboxes that do not map to a supported permission key.
- Selecting a parent product area can select supported child privileges for the same permission.
## Troubleshooting
If the custom role does not appear, refresh the `Roles` tab and check for validation errors.
If a permission checkbox is disabled, that permission is not supported for the selected privilege.
---
## Editing a Role
Source: `rbac/editing-a-role.md`
URL: /rbac/editing-a-role/
# Editing a Role
## Overview
Edit a custom role to change its name, description, or permissions.
## Who can use this
You need `role:modify`.
## Before you begin
Check which users are assigned to the role. Permission changes can affect every assigned user.
## Edit a custom role
1. Open `Organization > Overview`.
2. Select `Roles`.
3. In the role table, find the custom role.
4. In `ACTIONS`, select `Edit`.
5. Update `Role Name`, `Description`, or privileges.
6. Select `Update`.
## Remove users from a role
1. Select a role name in the `ROLE NAME` column.
2. In `Role Details`, review `Users Assigned to this Role`.
3. Select the remove action next to each user you want to remove.
4. Select `Save`.
## Delete a custom role
1. In `Roles`, find the custom role.
2. In `ACTIONS`, select `Delete`.
3. Review the warning.
4. Select `Confirm`.
## Expected result
The custom role is updated or deleted. If a custom role is deleted, the UI states that users assigned to it revert to the default `Tenant User` role.
## Notes and limitations
- Built-in roles cannot be edited or deleted.
- Removing all roles from a user may assign the default role.
- Deleting a custom role can change access for multiple users.
## Troubleshooting
If `Edit` or `Delete` is not available, confirm that the role is custom and that your role includes the required permission.
---
## FAQ
Source: `rbac/faq.md`
URL: /rbac/faq/
# FAQ
## Overview
Use this FAQ to answer common questions about CloudVerse organization access, roles, users, teams, workspaces, and Dynamic Perspective scope.
## Who can use this
Any CloudVerse user can read this FAQ. To act on the answers, you need the relevant organization, user, role, or access-management permissions.
## Before you begin
If you are troubleshooting access, collect the user's email, tenant, assigned roles, and the page or action they expected to use.
## Who can manage access in CloudVerse?
Users with the relevant organization, user, role, and access-management permissions can manage access.
## Where is organization access?
Open **Organization > Overview**.
## What is the difference between a built-in role and a custom role?
Built-in roles are provided by CloudVerse and cannot be edited or deleted in the role table. Custom roles are created by admins and can be edited or deleted.
## Can a user have multiple roles?
Yes. The user form allows multiple roles to be selected.
## What happens when I delete a custom role?
The UI warns that users assigned to the deleted custom role will revert to the default `Tenant User` role.
## Why can I not edit a user's role?
Role selection is disabled for owner users and for your own signed-in user.
## What is an External User?
An `External User` is a user whose email domain is outside the tenant organization domain.
## Why is an email address rejected?
CloudVerse checks the selected user type:
- `Tenant User` emails must match the tenant organization domain.
- `External User` emails cannot use the tenant organization domain.
## What does Login using SSO do?
The user form includes `Login using SSO`. When selected, the invite or update sends `ssoEnabled` for the user.
The `SSO` tab configures OAuth settings for Google and Microsoft.
## What is Perspective User scope?
Perspective User scope limits the cost data a `Perspective User` can see. It is shown as `Dynamic Perspective Scope` in the user details and edit-user views.
## Can I scope any role?
Scope controls are intended for scoped access patterns such as `Perspective User`. Not every role uses the same scope workflow.
## Are teams available?
Yes. Use the **Teams** tab in **Organization > Overview**. Team availability and write actions still depend on tenant rollout and permissions.
## Expected result
After using the FAQ, admins should know which Organization tab or permission to check next.
## Notes and limitations
Availability can vary by tenant rollout, permissions, and enabled modules.
## Troubleshooting
If an answer does not match your CloudVerse environment, check whether your tenant has a different rollout state or menu configuration.
---
## Users & Roles
Source: `rbac/index.md`
URL: /rbac/
# Users & Roles
CloudVerse AI uses role-based access control (RBAC) to determine what each user can see and do. Access is configured in **Organization > Overview**.
## Open Organization Overview
Go to **Organization > Overview** from product navigation.
## Tabs
| Tab | Use it to |
|---|---|
| **Overview** | See a summary of users, roles, and access configuration |
| **Users** | Invite users, assign roles, and configure Perspective scopes |
| **Roles** | View built-in roles and create or manage custom roles |
| **Teams** | Group users for inherited access (if enabled) |
| **Workspaces** | Organize resources and teams into access boundaries |
| **Business Scopes** | Define reusable business scopes for access objects |
| **SSO** | Configure identity provider and single sign-on settings |
## Who can access these settings
Managing users and roles requires specific permissions:
- `organization:view` — view organization information
- `user:view`, `user:add`, `user:modify` — manage users
- `role:view`, `role:add`, `role:modify`, `role:delete` — manage roles
- `idp-sso-authentication:view` — configure SSO
If a tab or action is missing, ask a `Tenant Admin` to check your role.
## Built-in roles
| Role | Who it's for |
|---|---|
| `Tenant Admin` | Full platform access — for platform administrators |
| `Tenant User` | Standard read access — for most team members |
| `Perspective Admin` | Full access within a Perspective scope |
| `Perspective User` | Read-only access limited to a Dynamic Perspective scope |
| `Asset Admin` | Resource inventory management access |
| `Executive User` | Dashboard and summary views — for leadership |
| `Partner Customer Admin` | For managed service provider customer accounts |
| `Partner Tenant Admin` | For managed service provider platform management |
See [Roles and permissions](roles-and-permissions.md) for the full permission matrix.
## MSP roles
Tenants using MSP Workspaces have three additional roles for the workspace hierarchy:
| Role | Who it's for |
|---|---|
| `MSP Root Admin` | Full platform access and management of the entire workspace tree |
| `MSP Managed Workspace Manager` | Manages a single workspace and everything below it |
| `MSP Customer Dashboard User` | Views the cost dashboard for one workspace |
See [MSP Workspaces](../msp/index.md).
## Quick links
- [Understand key concepts](key-concepts.md) — roles, permissions, access scopes explained
- [Create a custom role](creating-a-role.md)
- [Invite and assign a user](assigning-users-or-members.md)
- [Set an access scope](access-scopes.md)
- [Set up Teams and Workspaces](teams-workspaces-business-scopes.md)
- [Validate access](validating-access.md)
- [Troubleshoot access issues](troubleshooting.md)
## Best practices
- Apply the principle of least privilege — give users only the permissions they need.
- Keep at least two tested administrators to avoid being locked out.
- Use Teams for shared access rather than repeating direct grants.
- Review stale users, external users, and inactive workspaces regularly.
- Test SSO configuration before broad enforcement.
---
## Key Concepts
Source: `rbac/key-concepts.md`
URL: /rbac/key-concepts/
# Key Concepts
## Overview
RBAC controls access by assigning permissions through roles. CloudVerse also supports access scopes for users who should see only selected Dynamic Perspective data.
## Who can use this
Admins and delegated users with organization access permissions can use these concepts to plan roles and user access.
## Before you begin
Review the user's job responsibilities and decide whether they need broad access, read-only access, or scoped access to specific perspectives.
## Core terms
| Term | Meaning |
| --------------- | ------------------------------------------------------------------------------------------------ |
| User | A person who can sign in to CloudVerse. |
| Tenant User | A user whose email domain matches the tenant organization domain. |
| External User | A user whose email domain does not match the tenant organization domain. |
| Role | A named set of permissions assigned to one or more users. |
| Built-in role | A CloudVerse-provided role. Built-in roles cannot be edited or deleted from the role table. |
| Custom role | A role created by an admin for the tenant. Custom roles can be edited or deleted. |
| Permission | A specific action on a product area, such as view, add, modify, delete, activate, or deactivate. |
| Access scope | A set of Dynamic Perspective filters that limits what a `Perspective User` can see. |
| Effective scope | The final scope applied after CloudVerse combines the user's allowed scope with request filters. |
## Built-in roles
CloudVerse includes built-in roles for common administration, finance, engineering, executive, and scoped-user patterns. The exact roles available can vary by tenant configuration.
- `Tenant Admin`
- `Perspective Admin`
- `Tenant User`
- `Asset Admin`
- `Executive User`
- `Perspective User`
- `Partner Customer Admin`
- `Partner Tenant Admin`
## Tenant users and external users
When adding a user, choose one user type:
1. Select `Tenant User` if the user's email domain matches your organization domain.
2. Select `External User` if the user's email domain is outside your organization domain.
CloudVerse validates the email domain:
- Tenant users must use the organization domain.
- External users cannot use the organization domain.
## Roles and permissions
Roles contain privileges. In the custom role form, privileges are selected from a table with:
- `Privileges`
- `Permissions`
Permissions are selected as checkboxes, such as `View`, `Add`, `Modify`, `Delete`, `Activate`, and `Deactivate`.
## Access scopes
Access scopes apply to users with the `Perspective User` role. A scope can limit access by dimensions such as:
- Provider
- Account
- Region
- Service
- Tag
- Billing Account
- Resource Group
## Expected result
Users inherit access from their assigned roles. If a user also has a Dynamic Perspective scope, CloudVerse limits the user's visible cost data to that scope.
## Notes and limitations
- Removing `Perspective User` from a user with a configured scope shows a warning that the scope will be removed.
- Access is granted through roles and configured scopes. If a user is missing access, add the needed permission or scope rather than relying on an explicit deny rule.
---
## Roles
Source: `rbac/roles-and-permissions.md`
URL: /rbac/roles-and-permissions/
# Roles
## Overview
Use `Roles` to review existing roles and create custom roles for your tenant.
## Who can use this
You need:
- `role:view` to open the `Roles` tab.
- `role:add` to create a custom role.
- `role:modify` to edit a custom role.
- `role:delete` to delete a custom role.
## Before you begin
Decide which product areas the role should access and whether the role needs read-only or read/write access.
## View roles
1. Open `Organization > Overview`.
2. Select the `Roles` tab.
3. Review the table columns:
- `ROLE NAME`
- `DESCRIPTION`
- `PERMISSIONS`
- `ROLE TYPE`
- `ACTIONS`
## Filter roles
Use the role filter to narrow the list by:
- `PERMISSIONS`: `Read` or `Read/Write`
- `ROLE TYPE`: `Built In` or `Custom`
## Open role details
1. Select a value in the `ROLE NAME` column.
2. Review `Role Details`.
3. Review the role name, description, permissions, and `Users Assigned to this Role`.
From role details, users can be selected for removal from the role. Select `Save` to apply the change.
## Permission areas
CloudVerse roles can include permissions for organization access and product modules such as users, roles, reports, budgets, recommendations, integrations, and data exploration.
| Area | Confirmed permission keys |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| Access management | `navigator:access-management:view` |
| Users | `user:view`, `user:add`, `user:modify`, `user:activate`, `user:deactivate`, `user:delete`, `user:leave` |
| Roles | `role:view`, `role:add`, `role:modify`, `role:delete` |
| SSO | `idp-sso-authentication:view`, `idp-sso-authentication:add`, `idp-sso-authentication:modify`, `idp-sso-authentication:delete` |
| Accounts | `account:view`, `account:add`, `account:modify`, `account:delete`, `account:activate`, `account:deactivate` |
| Organization | `organization:view`, `organization:add`, `organization:modify`, `organization:delete` |
| Policies | `policy:view`, `policy:add`, `policy:modify`, `policy:run`, `policy:activate`, `policy:deactivate`, `policy:delete` |
| Reports | `report:view`, `report:add`, `report:modify`, `report:delete` |
| Budgets | `budget:view`, `budget:add`, `budget:modify`, `budget:activate`, `budget:deactivate`, `budget:delete` |
| Recommendations | `recommendation:view`, `recommendation:modify` |
| Integrations | `integration:view`, `integration:add`, `integration:modify`, `integration:delete` |
| Currency | `currency:view`, `currency:add`, `currency:modify`, `currency:delete` |
| Data Explorer | `data-explorer:view` |
## Expected result
Admins can see which roles exist, whether each role is built in or custom, and which users are assigned to each role.
## Notes and limitations
- Built-in roles do not show edit or delete actions.
- Custom roles can be edited or deleted when your role includes the required permissions.
- If a custom role is deleted, the UI states that assigned users revert to the default `Tenant User` role.
## Troubleshooting
If `Add Custom Role` is missing, confirm your role includes `role:add`.
If edit or delete actions are missing, confirm the role is a custom role and that your role includes `role:modify` or `role:delete`.
---
## Teams, Workspaces, and Business Scopes
Source: `rbac/teams-workspaces-business-scopes.md`
URL: /rbac/teams-workspaces-business-scopes/
# Teams, Workspaces, and Business Scopes
## Overview
Use **Organization > Overview** to group users into Teams, organize access through Workspaces, and define reusable Business Scopes.
Availability and write actions can vary by tenant rollout and assigned permissions.
## Teams
1. Open **Organization > Overview > Teams**.
2. Select **Create team**.
3. Enter **Team name**, **Slug**, and optional **Description**.
4. Select a **Team persona** and **Owner**.
5. Optionally choose a **Primary workspace**.
6. Add **Users** and select a **Membership role**.
7. Link supported Business Scopes.
8. Review the summary and save.
The team detail view can show **Members**, **Business Scopes**, and **Entitlements**.
## Workspaces
1. Open **Organization > Overview > Workspaces**.
2. Select **Create workspace**.
3. Enter **Workspace name**, **Slug**, and optional **Description**.
4. Choose the **Workspace type** and owner.
5. Link Business Scopes or saved mappings.
6. Add existing teams and candidate resource categories when available.
7. Review the summary and save.
The form explicitly distinguishes workspace setup context from access enforcement. A workspace does not automatically create broad grants.
!!! note
If your tenant uses MSP Workspaces, workspaces form a hierarchy with downward-only cloud account allocation, per-customer markup, and context switching. See [MSP Workspaces](../msp/index.md).
## Business Scopes
1. Open **Organization > Overview > Business Scopes**.
2. Search saved Virtual Tags or select **Create Business Scope**.
3. Enter **Business Scope name** and select the scope type.
4. Configure the supported mapping or definition.
5. Save the Business Scope.
6. Use **Attach** to connect it to a team, workspace, or resource.
Attaching a Business Scope does not itself grant access. Entitlements still control access.
## Best practices
- Use stable, business-owned names and slugs.
- Assign an accountable owner to every team and workspace.
- Keep Business Scopes aligned with Perspectives and Virtual Tags.
- Review inherited entitlements before adding direct access.
- Treat setup-context warnings literally; confirm enforcement before relying on a new relationship.
## Troubleshooting
If create or edit controls are disabled, the write endpoint may not be enabled or your user may lack permission. Refresh before retrying; the UI states that failed verification does not change existing access settings.
---
## Troubleshooting
Source: `rbac/troubleshooting.md`
URL: /rbac/troubleshooting/
# Troubleshooting
## Overview
Use this guide when users cannot access expected CloudVerse pages, buttons, or data.
## Who can use this
Customer admins with organization access permissions can complete most checks.
## Before you begin
Collect:
- User email.
- Tenant name.
- Current role or roles.
- Expected access.
- Page, tab, or action that is missing.
## Organization access is missing
The user may not have `navigator:access-management:view`.
Ask an admin to open **Organization > Overview**, review the user in **Users**, and check the assigned permissions in **Roles**.
## Users tab is missing
The user may not have `user:view`.
Add `user:view` to the relevant custom role or assign a role that already includes user viewing access.
## Roles tab is missing
The user may not have `role:view`.
Add `role:view` to the relevant custom role or assign a role that already includes role viewing access.
## Add User is missing
The user may not have `user:add`.
Only users with add-user permission can invite users.
## Add Custom Role is missing
The user may not have `role:add`.
Only users with role-add permission can create custom roles.
## Edit or Delete is missing for a role
Built-in roles cannot be edited or deleted. For custom roles, confirm the user has `role:modify` or `role:delete`.
## Role selection is disabled
Role selection is disabled when editing:
- The current signed-in user.
- An owner user.
Use another authorized admin if the role needs to be changed.
## Email domain validation fails
Check the selected user type:
- `Tenant User` must use the organization domain.
- `External User` must not use the organization domain.
## Scope is missing for a Perspective User
1. Edit the user.
2. Confirm `Perspective User` is selected.
3. Select `Select Perspectives`.
4. Choose an existing perspective or select `Create Scope`.
5. Save the scope.
## User sees too much or too little cost data
Review the user's Dynamic Perspective scope.
Scope filters can include provider, account, region, service, tags, billing account, and resource group. Adjust the scope and validate again.
## Expected result
After correcting the role, permission, status, or scope, the user can access the expected CloudVerse areas and data.
## Notes and limitations
- SSO settings are configured under the `SSO` tab.
- If access still does not match the expected result after checking role, permission, status, and scope, contact CloudVerse support with the user, organization, expected access, and affected page.
---
## Validating Access
Source: `rbac/validating-access.md`
URL: /rbac/validating-access/
# Validating Access
## Overview
Validate access after inviting a user, changing a role, deleting a custom role, or configuring a Dynamic Perspective scope.
## Who can use this
Admins with organization access permissions can validate user and role setup.
## Before you begin
Know which access outcome you expect:
- Which CloudVerse areas the user should see.
- Which actions the user should be able to take.
- Which cost data the user should see if scoped.
## Check the user record
1. Open `Organization > Overview`.
2. Select `Users`.
3. Find the user.
4. Confirm the `ROLE`, `STATUS`, and `USERS` columns.
5. Select the user's name to open `User Details`.
6. If the user is a `Perspective User`, review `Dynamic Perspective Scope`.
## Check the role definition
1. Open `Roles`.
2. Select the role name.
3. Review `Permissions`.
4. Review `Users Assigned to this Role`.
## Validate scoped access
1. Open the user's `Edit User` page.
2. Confirm `Perspective User` is selected in `Role`.
3. Review the scope preview.
4. If scope is missing, select `Select Perspectives`.
5. Confirm or create the scope.
## Expected result
The user's role and scope match the intended access.
## Notes and limitations
- Validation is not a replacement for testing with an approved test account when a workflow is sensitive.
- Some features may be enabled gradually by tenant or module.
## Troubleshooting
If the user can see the page but not expected data, check Dynamic Perspective scope filters.
---
## Reference
Source: `reference/index.md`
URL: /reference/
# Reference
Use reference pages when you need terminology, access-control answers, or machine-readable documentation indexes.
## How to use this section
Start with the [Glossary](../glossary.md) when teams use different names for the same concept. Use the RBAC FAQ when a user can sign in but cannot see a page, export data, approve a workflow, or manage another user.
## Reference pages
| Page | Use it for |
|---|---|
| [Glossary](../glossary.md) | Review CloudVerse terminology. |
| [RBAC FAQ](../rbac/faq.md) | Answer common access-control questions. |
## Common checks
| Question | Where to look |
|---|---|
| What does this product term mean? | Glossary |
| Why can a user not see a page? | RBAC FAQ, roles, and access scopes |
| Which docs should an AI assistant ingest? | `/llms.txt` for the index, `/llms-full.txt` for the full export |
When troubleshooting, capture the page name, active organization, date range, filters, and visible error text before opening an internal support request. Those details usually matter more than a screenshot and avoid exposing names or sensitive financial data.
## AI-agent entry points
The GitHub Pages build generates:
- [`/llms.txt`](../llms.txt), a compact index for agents.
- [`/llms-full.txt`](../llms-full.txt), a complete plain-text export of the documentation.
---
## Reports
Source: `reports/reports.md`
URL: /reports/reports/
# Reports
**Reports** creates, views, and shares financial, operational, optimization, and governance reports.
## Open Reports
Go to **Cost Management > Reports**.
The report list includes **Report Name**, **Description**, **Dataset**, **Dimensions**, **Updated**, and **Actions**.
## Create a report
1. Start the create-report flow.
2. In **Basics**, enter the report name, optional description, and data source.
3. In **Configuration**, choose the primary grouping dimension, optional breakdown dimension, drill-down dimensions, and measures.
4. In **Visualization**, choose **Bar**, **Line**, **Area**, **Pie**, or **Table**, then select **Daily**, **Weekly**, or **Monthly** granularity.
5. Save and open the report.
Datasets visible in the frontend include **Cost Summary**, **Cost with Tags**, **Inventory**, and **Telemetry**. Common dimensions include **Provider**, **Account**, **Region**, **Service**, and **Resource Type**.
## Use Report Viewer
1. Open a report from the library.
2. Set the date and filters.
3. Use **Group By**, **Breakdown By**, **Cost Type**, **Pricing Model**, **Charge Type**, or **Cost Category** where available.
4. Review charts, insight cards, and the result table.
5. Reset filters if you need to return to the report default.
## Other report surfaces
- **Cost & Usage Explorer** supports ad-hoc cost analysis.
- **Technology Business Management: Cloud Economics** explains spend by organization scope, TBM tower, cloud driver, utilization, and action.
- Legacy **Reports & Analytics**, custom reports, report instances, and export routes are available only if enabled.
Report creation and editing require reporting permissions. See [Export issues](../troubleshooting/exports.md).
---
## Notification Settings
Source: `settings/notifications.md`
URL: /settings/notifications/
# Notification Settings
**Notification Settings** controls alert delivery for anomalies, budgets, recommendations, and automations.
## Open Notification Settings
Go to **Settings > Notification Settings**.
## Configure an alert
1. Choose an alert category or use **Search by Alert Type**.
2. Review **Severity**, **Alert Type**, delivery configuration, **Recipients**, **Status**, and **Actions**.
3. Open the edit action.
4. Add recipients.
5. Select a frequency such as **Daily**, **Weekly**, **Monthly**, **Quarterly**, or **Yearly** when supported.
6. Set the status to **Active** or **Inactive**.
7. Save.
Global notification categories include **Anomalies**, **Budget**, **Recommendations**, and **Automations**. Severity filters include **Critical**, **High**, and **Warning**.
Delivery channels represented in the frontend include email, Slack, Microsoft Teams, and in-app notification. Channels require their corresponding integration.
## Personal notification preferences
The account menu’s **Profile preferences > Notifications** tab controls personal channels for **Anomaly alerts**, **Budget alerts**, **Recommendation alerts**, and **Automation alerts**.
## Alert routing examples
| Alert | Suggested recipients |
|---|---|
| Critical anomaly | Finance operations, service owner, and platform on-call. |
| Budget threshold | Budget owner and finance analyst. |
| High-value recommendation | Engineering owner and FinOps reviewer. |
| Automation approval | Approver group named in the workflow policy. |
## Best practices
- Send critical alerts to a monitored team channel and named owners.
- Avoid sending every low-severity event to broad lists.
- Test collaboration integrations after authorization or secret changes.
- Review inactive alerts and stale recipients.
---
## Profile preferences
Source: `settings/profile-preferences.md`
URL: /settings/profile-preferences/
# Profile preferences
Profile preferences control personal identity details, workspace defaults, display, currency, notifications, and saved views.
## Open Profile preferences
Open the account menu and select **Profile preferences**.
## Tabs
| Tab | What you can configure |
| ---------------------- | -------------------------------------------------------------------- |
| **Profile** | Personal details such as profile link, title, and team. |
| **Workspace** | Organization, default landing page, and available scope preferences. |
| **Display & Currency** | Theme, density, country, time zone, date format, and number format. |
| **Notifications** | Personal alert channels. |
| **Saved Views** | Review and manage saved page/filter configurations. |
Theme options are **System**, **Light**, and **Dark**. Density options are **Comfortable** and **Compact**. Number-format options include **Auto**, **US**, **EU**, and **Indian**.
Default landing-page options include **Dashboard**, **Cost Explorer**, **Recommendations**, **Reports**, and **Data Platform**.
Saved Views include **Name**, **Page/Route**, **Pinned**, **Default**, **Updated**, and **Actions**. Use a page’s save-view control to name a reusable view, then manage it here.
## Best practices
- Set the correct work country and time zone before scheduling or reviewing daily alerts.
- Use one default landing page that matches your primary role.
- Delete saved views that reference obsolete filters or inaccessible scopes.
- Remember that organization currency settings and personal display preferences can affect how figures appear.
---
## Delayed billing data
Source: `troubleshooting/delayed-billing-data.md`
URL: /troubleshooting/delayed-billing-data/
# Delayed billing data
Billing data can arrive after resource inventory or telemetry. A blank recent period does not necessarily mean zero spend.
## Check the delay
1. Open **Settings > Integrations** and confirm the billing source is active.
2. Open integration details and verify the configured billing export and selected scope.
3. In **Cost Management > Cost Explorer**, widen the date range and identify the latest date with data.
4. Compare another account from the same provider to determine whether the delay is account-specific.
5. Check source-health, last-received, or ingestion status fields where available.
6. Confirm that filters are not excluding the newest billing period.
Provider invoice finalization, export delivery, corrections, credits, and CloudVerse ingestion can occur at different times. Avoid publishing a partial period without labeling it.
## Refresh expectations
| Data type | Expectation |
|---|---|
| Resource inventory | Often appears before finalized billing because it comes from provider discovery APIs. |
| Billing exports | Depend on provider export delivery, permissions, invoice finalization, and CloudVerse ingestion. |
| Corrections and credits | May arrive after initial usage rows and can change prior-period totals. |
| Recommendations | Depend on both cost and telemetry coverage, so they may lag basic spend visibility. |
If a recent period is incomplete, label it as preliminary in reports and avoid treating missing rows as zero spend.
---
## Export and file issues
Source: `troubleshooting/exports.md`
URL: /troubleshooting/exports/
# Export and file issues
## Export does not start
1. Confirm the table or report has data.
2. Reduce the date range or result size.
3. Allow downloads for the CloudVerse site.
4. Retry without a browser extension that blocks downloads.
5. Keep the page open while an on-demand report is generated.
## Exported data looks different
Record the page filters, cost type, currency, and generation time. Some exports represent source rows while the screen shows aggregated or formatted values.
## Information to include when escalating
| Field | Example |
|---|---|
| Page | Cost Explorer, Reports, Bill Review, or Architecture Review |
| Export type | CSV, PDF, report artifact, or generated file |
| Date range and filters | The exact range, provider, account, Perspective, and saved view |
| Browser behavior | Download blocked, empty file, timeout, or wrong totals |
## Upload fails in Bill Review or Architecture Review
1. Confirm the requested file type. Bill Review explicitly requests a PDF bill.
2. Check file size and file integrity.
3. Remove password protection.
4. Rename files with simple characters.
5. Redact unnecessary sensitive content, then retry.
Never upload credentials, access tokens, or private keys.
---
## Filters return unexpected results
Source: `troubleshooting/filters.md`
URL: /troubleshooting/filters/
# Filters return unexpected results
## Empty or incomplete results
1. Use the page’s reset or clear action.
2. Confirm the date range and granularity.
3. Check the active organization and currency.
4. Add filters one at a time.
5. Verify provider and account before selecting dependent region or service values.
6. Check saved-view scope, Perspectives, tags, and advanced filter expressions.
Advanced expressions can combine provider-specific fields, keys, and values. An incorrect provider, field, operator, or tag value can remove all records.
## Totals do not match another page
Compare:
- date range and time zone;
- cost type;
- granularity;
- currency;
- provider/account/service scope;
- allocation or Perspective scope;
- credits, discounts, tax, and commitment treatment;
- data refresh time.
Two pages with different datasets or cost definitions are not expected to have identical totals.
## Filter dependency examples
| Filter | Dependency |
|---|---|
| Region | Provider and account selection can change the available regions. |
| Service | Provider selection can change the available services. |
| Tags | Tag keys and values depend on the selected provider, account, and date range. |
| Perspectives | Perspective rules can include or exclude resources before page-level filters apply. |
---
## Troubleshooting
Source: `troubleshooting/index.md`
URL: /troubleshooting/
# Troubleshooting
Find solutions to common CloudVerse AI issues. Each guide covers symptoms, likely causes, and step-by-step resolution.
## Guides
| Issue | Guide |
|---|---|
| Can't sign in, page won't load, or missing access to a feature | [Login and access issues](login-access.md) |
| Cost or inventory data is missing or incomplete after connecting an integration | [Missing or delayed data](missing-delayed-data.md) |
| Billing data appears weeks late or lags behind your cloud console | [Delayed billing data](delayed-billing-data.md) |
| Recommendations or anomalies are not showing up | [Missing recommendations](missing-recommendations.md) |
| Cost Explorer filters return empty or unexpected results | [Unexpected filter results](filters.md) |
| Export downloaded but is empty, corrupt, or wrong scope | [Export issues](exports.md) |
| An integration shows errors or fails during setup | [Integration setup issues](integrations.md) |
## Before you start troubleshooting
Check these common causes first:
1. **Billing ingestion takes time** — most providers take a few hours to 24 hours for the first data to appear after connecting. For daily reconciled billing, data for a given day may not appear until the following day.
2. **Filters may be over-constraining** — reset all Cost Explorer filters and try again with no filters applied.
3. **Permissions** — if a page or action is missing, check with your `Tenant Admin` that your role has the required permission. See [Login and access](login-access.md).
4. **Integration status** — check **Settings > Integrations** for error indicators on the relevant integration.
## Still stuck?
If none of the guides resolve your issue, contact CloudVerse AI support with:
- The organization name and affected account
- The integration or feature involved
- A description of what you see vs. what you expect
- Any error messages shown on screen
---
## Integration setup issues
Source: `troubleshooting/integrations.md`
URL: /troubleshooting/integrations/
# Integration setup issues
## Connection fails
1. Confirm the provider and authentication method.
2. Verify IDs, keys, secrets, tokens, and redirect URLs.
3. Confirm required cloud APIs and billing exports are enabled.
4. Verify the selected accounts, projects, subscriptions, compartments, or organization scope.
5. Check that the credential has the required permissions and is not expired.
6. Retry the callback flow for Slack, Jira, Teams, or another OAuth integration.
## Connection succeeds but no data appears
Check discovery scope, billing setup, source status, and ingestion state. Confirm that the account is visible in integration details and that Cost Explorer filters include it.
## Provider-specific notes
- AWS setup may offer access-token or CLI-console flows.
- GCP setup can require billing account and project IDs plus enabled APIs.
- OpenAI setup requests an account name, API key, and optional Organization ID.
- Entitlement sources must be healthy before License Optimizer can evaluate coverage.
## Escalation details
| Detail | Why it helps |
|---|---|
| Provider and authentication method | Identifies the expected setup flow. |
| Integration status message | Shows whether the failure is authentication, discovery, billing, or ingestion. |
| Selected scope | Confirms which accounts, projects, subscriptions, compartments, or workspaces should appear. |
| Latest visible billing date | Separates provider export delay from missing permissions. |
Rotate any credential that may have been exposed during troubleshooting.
---
## Login and access issues
Source: `troubleshooting/login-access.md`
URL: /troubleshooting/login-access/
# Login and access issues
## Cannot sign in
1. Confirm you are using the correct CloudVerse environment and email address.
2. Retry the sign-in method approved by your organization.
3. For SSO, confirm the correct identity-provider account and tenant.
4. Clear stale CloudVerse cookies or use a private browser window.
5. If an activation link expired, ask an administrator to resend the invitation.
## Signed in, but a page is missing
1. Confirm the active organization in the account menu.
2. Ask an administrator whether the feature is enabled.
3. Ask them to verify the required navigator/view permission and business scope.
4. If a direct page says access is restricted, provide that exact route to the administrator.
Product navigation intentionally hides pages for which the user lacks permission.
## SSO configuration issue
Verify client ID, tenant ID, redirect configuration, secret validity, and approved domains. Test with a non-emergency administrator before enforcing SSO.
## Escalation details
| Detail | Why it helps |
|---|---|
| Email address used to sign in | Confirms the identity record an administrator should inspect. |
| Organization selected | Users can belong to more than one organization. |
| Missing page or action | Separates feature access from data-scope access. |
| Timestamp and browser | Helps diagnose session, SSO, or cookie issues. |
---
## Missing or delayed data
Source: `troubleshooting/missing-delayed-data.md`
URL: /troubleshooting/missing-delayed-data/
# Missing or delayed data
## No data appears
1. Confirm the active organization.
2. Open **Settings > Integrations** and verify that the source exists and is active.
3. Open integration details and check for authentication, permission, discovery, or billing-setup errors.
4. Expand the date range.
5. Clear provider, account, region, service, Perspective, tag, and saved-view filters.
6. Check whether the page reports **Ingest pending**, **Partial coverage**, or a similar state.
## Billing data is delayed
CloudVerse can only display billing periods delivered by the connected source. Newly connected accounts and recently closed billing periods may not be immediately available.
Check:
- provider billing export delivery;
- source permissions and selected accounts/projects/subscriptions;
- the latest available date in Cost Explorer;
- whether the issue affects one account or all accounts;
- source-health or last-received fields where available.
Do not assume a blank recent day means zero spend.
## What to tell stakeholders
| Situation | Recommended message |
|---|---|
| New integration | Data is still being discovered and normalized. Validate the integration status first, then check Cost Explorer again after ingestion progresses. |
| Recent billing period missing | The provider may not have delivered finalized billing rows yet. Treat the period as incomplete until the latest available date advances. |
| One account missing | Check that the account is selected in the integration scope and that provider permissions include billing and resource discovery. |
| One page missing data | Clear page filters and compare the same provider, account, and date range in Cost Explorer. |
| All pages missing data | Check integration status, authentication, provider billing export health, and CloudVerse access. |
Escalate with the provider, account, date range, affected page, latest visible billing date, and any integration status message.
---
## Missing recommendations or anomalies
Source: `troubleshooting/missing-recommendations.md`
URL: /troubleshooting/missing-recommendations/
# Missing recommendations or anomalies
Recommendations and anomalies require sufficient data and an eligible scope.
## Checks
1. Confirm provider billing and resource inventory are present.
2. For rightsizing or Spot analysis, confirm utilization telemetry is available.
3. Remove filters and widen the date range.
4. Check production/non-production or environment filters.
5. Confirm thresholds are not excluding the opportunity.
6. Check whether the recommendation was dismissed or routed to another state.
7. For commitment recommendations, verify commitment inventory and usage coverage.
8. For license recommendations, verify entitlement sources.
9. For Perspective anomalies, verify that the Perspective matches resources and spend.
A result of “no recommendations” can be valid. It can also mean incomplete telemetry, insufficient history, restricted access, or an unsupported resource type.
## What to check by recommendation type
| Type | Required signal |
|---|---|
| Rightsizing | Cost, resource inventory, and utilization telemetry. |
| Spot | Workload suitability, interruption tolerance, and compute inventory. |
| Commitment | Eligible spend history, current commitment inventory, and usage coverage. |
| License | Entitlement source, running software inventory, and utilization context. |
| Anomaly | Spend history for the selected scope and current-period billing data. |
---