What this tool does
Paste a CloudFormation template — YAML or JSON — and it's checked against the documented template structure: required sections, resource shape, and whether every Ref and Fn::GetAtt in the template actually points at something that exists. YAML shorthand intrinsic functions (!Ref, !GetAtt, !Sub, !If, and the rest) are understood and resolved to their full Fn:: form before checking.
What this tool is not
This is structural validation, not deployment validation. It can't tell you whether a resource's Properties are actually valid for that specific resource type — each of the hundreds of AWS resource types has its own property schema, and checking those requires the type-by-type resource and property types reference that real deployment does. For that level of checking, use aws cloudformation validate-template or cfn-lint. This tool catches the mistakes that happen before any of that — a typo'd section name, a missing Type, a Ref to a resource that doesn't exist — entirely in your browser, with no AWS credentials involved.
What gets checked
- Top-level sections — only
Resourcesis required; anything outside the ten documented section names is flagged. - AWSTemplateFormatVersion — the only valid value is
"2010-09-09". - Each resource — a
TypematchingAWS::Service::ResourceType(orCustom::Name), logical IDs that are alphanumeric-only, and no attributes outside the documented set (Type,Properties,DependsOn,Condition,Metadata,DeletionPolicy,UpdateReplacePolicy,CreationPolicy,UpdatePolicy). - Dangling references — every
RefandFn::GetAtttarget is checked against the template's own resources, parameters, and the eight AWS pseudo parameters (AWS::AccountId,AWS::Region, and so on).
FAQ
Why does a valid-looking Ref show a warning?
Most likely a typo in a resource's logical ID, or the resource genuinely doesn't exist in this template yet — a very common copy-paste mistake when assembling a template from multiple snippets.
Can this check an IAM policy embedded in a template?
Not automatically — pull the policy document out and paste it into IAM Policy Viewer for a statement-by-statement breakdown.
Is my template sent anywhere?
No — parsing and validation happen entirely in your browser. Nothing you paste here is ever sent to a server.
How does CloudFormation compare to Terraform?
See CloudFormation vs Terraform for the concrete differences — state management, change previews, failure handling, and licensing — rather than just "which is more popular."